Повреждение модели домена POCO при создании классов сущностей LINQ?

StackOverflow https://stackoverflow.com/questions/1105752

Вопрос

Скажем, у меня есть модель предметной области, созданная из классов C#, например:

public class MyClass
{
public string MyProperty { get; set; }
}

Наряду с моделью я определил классы интерфейсов репозитория для IoC.

Теперь я пытаюсь превратить эту модель предметной области POCO в набор классов Entity, используя сопоставление LINQ.(Этот подход был рекомендован в книге по MVC, которую я читаю.) В приведенном выше примере это было достаточно легко сделать с несколькими атрибутами, не влияя при этом на «простую старость» классов:

[Table]
public class MyClass
{
[Column]
public string MyProperty { get; set; }
}

Проблема возникает, когда я начинаю сопоставлять ассоциации, изменять модификации и тому подобное.Кажется, я быстро разрушаю первоначальную концепцию модели предметной области и вместо этого просто создаю набор классов LINQ-to-SQL.Я что-то пропустил?Являются ли эти классы по-прежнему подходящим местом для бизнес-логики?Смогу ли я по-прежнему и должен ли продолжать загружать данные в эти классы из источников, отличных от LINQ и отличных от БД?

Спасибо

Это было полезно?

Решение

Этот пост, также посвященный SO, отвечает на мой вопрос:(Спасибо Google)

Классы сущностей отделены от поставщика LINQ to SQL для реализации шаблона репозитория.Как?

РЕДАКТИРОВАТЬ:

А может и нет, это обычная жалоба на классы сущностей?

ДРУГОЕ РЕДАКТИРОВАНИЕ:

Хорошо, в настоящее время это невозможно сделать, но с .NET 4.0 это возможно.

Другие советы

Было еще несколько подобных вопросов.
На этих выходных я играл с EF4, вы можете следить Серия постов в блоге Джули Лерман для реализации шаблона репозитория с помощью EF4.Это работает хорошо, хотя это еще не совсем просто...
Насколько я знаю, с EF3.5 сделать это невозможно.Удачи.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top