Ich versuche eine fundierte Entscheidung darüber zu treffen, was ORM für eine Reihe von Legacy-Anwendungen verwenden soll. Ich bin verantwortlich für die Portierung auf MVC 2. Die ORMs, die ich angeschaut habe, sind LINQ to SQL, LINQ to Entities und nHibernate . L2S schien am einfachsten zu sein, aber ich habe zahlreiche Artikel und Blogeinträge gefunden, die besagen, dass Microsoft es nach .NET 3.5 nicht mehr aktualisieren würde. Vor diesem Hintergrund arbeite ich ein wenig mit Entitäten zusammen, habe aber festgestellt, dass es für die kleinen Anwendungen, mit denen ich arbeite, umständlich und zu kompliziert ist (dasselbe gilt für nHibernate). Ich habe kürzlich "Pro ASP.NET MVC 2 Framework" von Steven Sanderson gekauft, in dem er LINQ to SQL als sein ORM verwendet hat, und zwar einmal:
%Vor% Ich war mir nicht bewusst, dass sie Änderungen vorgenommen hatten, noch hatte ich mir die Mühe gemacht, nachzusehen, da die allgemeine Meinung der Gemeinschaft zu sein schien, dass L2S sich dem Ende des Lebens näherte, um durch L2E ersetzt zu werden. Damien Guard schrieb über einige Änderungen in seinem Blog ( Ссылка ) für Interessierte.Ich hoffe, dass jemand die Position von Microsoft bezüglich LINQ to SQL beleuchten kann. Die Anwendungen, die ich portiere und aktualisiere, haben eine (ungefähr) 8-10 Jahre dauernde Lebensdauer, also würde ich es bevorzugen, eine Technologie zu übernehmen, die in diesem Zeitrahmen nicht aufgegeben wird und meine Ersatzgeräte nebenbei lässt. (Natürlich, wenn jemand andere Empfehlungen für kleine Geschäfte hat - unsere Datenbank hat weniger als 5 Millionen Datensätze - würde ich sie gerne hören.)
Die Nachricht, die ich erhalten habe, lautet: Wir sollten uns wirklich so weit wie möglich mit Entity Framework beschäftigen; LINQ to SQL befindet sich grundsätzlich im Wartungsmodus: Es wird nicht in absehbarer Zeit verschwinden, aber es wird sich auch nicht wesentlich weiterentwickeln. Inzwischen entwickelt sich Entity Framework und wird auch in andere Produkte / Frameworks wie RIA Services oder WCF Data Services integriert.
Ich weiß nicht, ob das nur Verkaufsargument war, aber wir hatten einen MS-Typen, der uns in Visual Studio 2010 vorgestellt hat, und er wies darauf hin, dass MS immer noch Teams hat, die EF und L2S separat entwickeln.
Tags und Links asp.net linq-to-sql linq-to-entities