[英]Moq setup to return some hardcoded POCO
我正在尝试使用此链接来获取moq中的一些对象以传递给我的服务。 http://allen-conway-dotnet.blogspot.com/2014/01/creating-unit-test-using-moq-to-stub.html
我在返回()函数上遇到错误,说没有满足这个的重载函数。 全部,返回一个IQueryable对象。
Mock<IGroupsRepository> groupRepo;
groupRepo.Setup(m => m.All).Returns(new List<GROUPS>()
{
new GROUPS { ID = 0, GROUP_NAME = "TEST1", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test1" },
new GROUPS { ID = 1, GROUP_NAME = "TEST2", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test2" }
});
全部,返回一个IQueryable对象。
List<GROUPS>
没有实现IQueryable<T>
,因此All
永远不会返回这样的列表。
您可以在列表上调用AsQueryable
来获取列表的IQueryable<T>
表示。
var queryable = new List<GROUPS>()
{
new GROUPS { ID = 0, GROUP_NAME = "TEST1", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test1" },
new GROUPS { ID = 1, GROUP_NAME = "TEST2", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test2" }
}.AsQueryable();
groupRepo.Setup(m => m.All).Returns(queryable);
new List<GROUPS>()
{
new GROUPS { ID = 0, GROUP_NAME = "TEST1", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test1" },
new GROUPS { ID = 1, GROUP_NAME = "TEST2", CREATED_DATE = DateTime.Now, CREATED_BY = "Joe Blow", DESCRIPTION = "Test2" }
}
.AsQueryable()
AsQueryable()
应该使它与IQueryable
返回类型兼容
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.