Ngenerics

NGenerics on Ohloh

I share the same sentiment as Ayende on the visibility of open source project usage - page views and downloads are not useful in determining usage. If you do use NGenerics in your projects (whether it be public or private), you can let us know on the Ohloh project page . If you’re using it in an public/open source project, drop us a line so …

NGenerics overview - the HashList

Something that I find a use for in almost every project I work on, is the HashList (also known as a MultiMap in the Java world) in NGenerics 1.2. A HashList is a multi-valued dictionary that uses a Dictionary<TKey, IList> under the covers. It still retains dictionary semantics but handles the creation and destruction of the key/list pairs …

Public CI for NGenerics

Thanks to the Code Better guys , JetBrains , Ideavine , and Devlicio.us , NGenerics is now hosted on a public CI server .

Specification pattern

The Specification pattern has been added to NGenerics . In my previous post on the Specification Pattern, we explored creating specification functionality using extension methods. It’s been implemented with the operator methods (And, Or, Xor) on the actual interface, with an abstract class forming the base of all specifications. The …

NGenerics 1.3 Release

NGenerics 1.3 has finally reached production status - you can download it here . With it released, we can start working on some exciting new features for 1.4. Watch this space! Photo by Lewis Ngugi on Unsplash

Extension Method Patterns

One of the walls I hit the most in C# when designing classes is the lack of support for multiple inheritance, which makes that one spot for inheriting from a very valuable spot indeed. For the purposes of this discussion, we’ll start with a simple implementation of the specification pattern :

NGenerics 1.3 Beta Release

We’ve just released NGenerics 1.3 Beta - grab it while it’s hot! Also, don’t forget to give feedback on new features / anything that really bugs you.

Team Foundation Server

You would think that the integration between Visual Studio (using the TFS client) and TFS would be better than the Visual SourceSafe integration. Nope, the same annoying bugs that were present in the Visual SourceSafe integration has rocked up in TFS, so I’m assuming someone extended the old codebase. After some unsuccessful check-ins (read, …

New Company, new job, NGenerics

I’ve left Avision to join Intervate . Although I miss Avision and its people tremendously, I felt that I’ve reached my growth ceiling and that I needed some new challenges. I’ve been an employee at Intervate for two months now - and it’s a great company : Microsoft Gold Partner, intelligent and competent people, exciting …

Sealed classes

As part of version 1.3 of NGenerics , I’ve removed most of the sealed keywords from the classes (where it made sense). It took me a while, but I’ve accepted the following rule (and Microsoft is of the same opinion, it seems) :