[英]Initialize data for Query Types Ef core 2.1
I'm using InMemory database to test my repository logic. 我正在使用InMemory数据库来测试我的存储库逻辑。 But I have this report database view model. 但是我有这个报表数据库视图模型。
public DbQuery<DBVIEWMODEL> Reports { get; set; }
The thing is, I can't initialize it with dummy data for my unit test. 关键是,我无法使用虚拟数据将其初始化用于单元测试。 There is no such thing like, Add, AddRange... 没有像Add,AddRange这样的东西。
So my question; 所以我的问题; am I allowed to initialize this Query type? 我可以初始化此查询类型吗? Or Query type is not meant for unit test? 还是查询类型不适用于单元测试?
FYI: 供参考:
I can do my unit test, if I change DbQuery<>
to DbSet<>
and set a dummy Id in my view using ROW_NUMBER()
. 如果将DbQuery<>
更改为DbSet<>
并使用ROW_NUMBER()
在视图中设置一个虚拟ID,则可以进行单元测试。
My answer is no. 我的回答是不。 A DbSet
is a set of data that can be edited, added or deleted. DbSet
是可以编辑,添加或删除的一组数据。 But DbQuery
represents a query OVER a set of data, there are no C_UD operation (Create, Update, Delete). 但是DbQuery
表示对一组数据的查询,没有C_UD操作(创建,更新,删除)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.