Welche Version von .NET Framework sprechen Sie? 3.5? 4.0?
Es gibt ziemlich viele ORMs draußen und einige der kommerziellen erfüllen möglicherweise Ihre Bedürfnisse (oder arbeiten an neuen Versionen, die Ihre Bedürfnisse erfüllen). Es ist ziemlich entmutigend, aus kommerzieller Sicht sowohl gegen NHibernate als auch gegen Entity Framework zu konkurrieren. Microsoft hat es viel schwerer als nötig gemacht, einen Linq-Provider zu schreiben, weshalb so wenige ORMs einen haben. Das Schreiben eines domainorientierten designorientierten ORM, das mehrere Datenbankanbieter unterstützt, ist ebenfalls ein ziemlich steiler Anstieg.
NHibernate hat sicherlich alle Momentum, aber das bedeutet nicht, dass es unbesiegbar ist. Es ist schwer, mit der kostenlosen Open-Source-Software & zu konkurrieren, die einen mehrjährigen Vorsprung hat, selbst für ein Unternehmen mit den finanziellen Ressourcen von Microsoft.
Ich denke, Sie müssen nur geduldig sein. Der Linq-Anbieter von NHibernate verbessert sich und die anderen ORM-Anbieter arbeiten intensiv an der Verbesserung ihrer Angebote. Die Dinge könnten sich in den nächsten zwei Jahren erheblich ändern.
Wer sagt LINQ to SQL ist tot? Hat Microsoft einen Patch veröffentlicht, damit er plötzlich nicht mehr funktioniert? –
Und was ist mit NHibernate, wenn Sie nach Alternativen suchen? Wenn es die XML-Mappings sind, schauen Sie sich Fluent NHibernate an. Wenn Sie sich auch nicht darum kümmern, werfen Sie einen Blick auf Castle ActiveRecord, das NHibernate-basiert ist, aber das Mapping noch einfacher macht und auch etwas von der Sitzungsverwaltung abstrahiert. –
@Kyralessa: LinqToSql ist nicht tot, aber Microsoft setzt seine Kraft hinter Entity Framework (haben Sie die Anzahl der PDC 2009-Sitzungen auf EF vs. LinqToSql gezählt?). Der Linq-Provider von NHibernate ist in Arbeit und das scheint für Fregas eine Rolle zu spielen. –