Мне нравится LINQ to SQL, но кажется, что классы, которые он создает, тесно связаны с базой данных, в которой они хранятся, что похоже на Bad Thing.
Например, используя базу данных olde Northwind, если я создаю dbml с таблицей Products, генерируется класс Product
. Я могу использовать этот класс в любом другом уровне, который все хорошо и хорошо, но если я решаю, что лучше использовать простой старый ADO.NET(или базы данных коммутаторов), мне придется воссоздать класс Product
, с любой другой "моделью".
Есть ли способ обойти это? Или создать свои объектные модели отдельно, а затем отобразить на них таблицы? Я играл с различными классами отображения, но пока не нашел удовлетворительного ответа.