在我已经关注一段时间(example)的存储库模式中,我一直都有使用“新” DbSet的Add,Delete等方法(例如,DbContext.Set<T>.Update(entity)
在测试中,幸运的是,这似乎总是返回相同的DbSet对象,是否有任何原因我不应该在构造函数中调用一次DbContext.Set<T>()
并将其另存为属性,而不是在每个构造函数中都调用Set<T>()
方法?我只想确保我没有丢失任何东西。
答案 0 :(得分:1)
有什么理由不应该在构造函数中一次调用DbContext.Set()并将其保存为属性,而不是在每个方法中都调用Set()吗?
不。这就是普通DbContext在初始化时所做的。参见What calls the setters in an Entity?