我目前正在使用EntityFrameworkCore 2.0.0。
我正在创建的应用程序是一个在线商店产品刮板。所有商店都保存在数据库中,每个商店都有一个实现IStoreScraper
的抓取器。
这是我的商店模型:
public class Store
{
public int Id { get; set; }
public string Name { get; set; }
[NotMapped]
public IStoreScraper StoreScraper { get; set; }
}
我想知道从数据库中获取Store
对象时是否可以将正确的IStoreScraper
对象添加到该对象中。通过数据库中的值或其他值。
我还研究了在模型的构造函数中注入它,但是,这违反了依赖注入模式,因为每个类都有自己的已知实现。
也许我什至应该从另一个角度看待它,因为这段代码不应该在模型类中?有什么想法吗?
您可以覆盖对象物化事件并将其添加到此处,如本答案中所述;
如何在域模型实体类中注入帮助程序依赖项
但是,我强烈建议不要这样做。EF 旨在作为您的数据模型,您应该在此之上有一个业务层,这是添加此类依赖项的正确位置。