Guten Tag!Wie Sie von nicht typisierten DataSets nach POCO LINQ2SQL in der Legacy-Anwendung wechseln können
Ich habe eine Legacy-Anwendung, in der Datenzugriffsschicht von Klassen besteht, wo Abfragen werden durchgeführt unter Verwendung SqlConnection
/SqlCommand
und die Ergebnisse werden zu den oberen Schichten in untypisierten Datasets/Datatable eingewickelt übergeben.
Jetzt arbeite ich an der Integration dieser Anwendung in neuere wo geschrieben in ASP.NET MVC 2, wo LINQ2SQL für den Datenzugriff verwendet wird. Ich möchte die komplexe Logik des Generierens komplexer Abfragen, die in LINQ2SQL an SqlConnection
/SqlCommand
übergeben werden, nicht neu schreiben (und keine Berechtigung dafür haben), aber ich möchte Ergebnisse dieser Abfragen als stark typisierte Objekte haben Sammlung anstelle von untypisierten DataSets/DataTable.
Die Grundidee besteht darin, alten Datenzugriffscode in einem nett aussehenden ASP.NET MVC "Model" zu verpacken.
Was ist der schnelle \ einfache Weg, dies zu tun?
Zusätzlich zur Antwort unten hier ist eine schöne Lösung, basierend auf AutoMapper: http://elegantcode.com/2009/10/16/mapping-from-idatareaderidatarecord-with-automapper/
L2SQL * ist * ziemlich schnell/einfach. Ziehe einfach die Tabellen dorthin und fange an, Code dagegen zu schreiben. – RPM1984
LINQ2SQL ist einfach, aber neu geschriebene Hand-optimierte Logik in SQL ist es nicht, "und habe keine Erlaubnis, dies zu tun", wie oben erwähnt. – artvolk