Существует множество постов о том, какие классные объекты POCO и как их поддерживает Entity Framework 4.
Я решил опробовать его на доменной архитектуре, ориентированной на разработку, и закончил с предметными сущностями домена, которые зависят от сервисов.
Все идет нормально.
Представьте, что мои продукты являются объектами POCO.
Когда я запрашиваю объекты вроде этого:
NorthwindContext db = new NorthwindContext();
var products = db.Products.ToList();
EF создает экземпляры продуктов для меня.
Теперь я хочу внедрить зависимости в мои объекты POCO (продукты).
Единственный способ, который я вижу, это создать какой-то метод в NorthwindContext, который создает что-то вроде псевдокода ниже:
public List<Product> GetProducts(){
var products = database.Products.ToList();
container.BuildUp(products); //inject dependencies
return products;
}
Но что, если я хочу сделать свой репозиторий более гибким, как это:
public ObjectSet<Product> GetProducts() { ... }
Итак, мне действительно нужен завод, чтобы сделать его более ленивым и дружелюбным по отношению к linq.
Пожалуйста, помогите!