如何存根这些方法:
ProductDAL:
public IQueryable<string> getCatNameList()
{
var db = new Database();
var categoryNames = db.ProductCategories.Select(c => c.Name);
return categoryNames;
}
public IQueryable<int> getCatIdList()
{
var db = new Database();
var categoryID = db.ProductCategories.Select(c => c.Categoryid);
return categoryID;
}
IProductDAL:
IQueryable<int> getCatIdList();
IQueryable<string> getCatNameList();
一直在搜索stackoverflow,但没有任何问题/答案让我更接近理解我是如何做到的。
答案 0 :(得分:1)
创建和IEnumerable
您需要返回的任何内容(可以是List
或数组)。然后使用IQueryable
扩展方法将其转换为AsQueryable
,并将其传递给您使用的任何模拟/存根库。
答案 1 :(得分:0)
在这种情况下,我建议您将界面更改为一系列IEnumerable
而不是IQueryable
。没有必要将这些方法作为可查询对象进行预测。
如果您只是想将它们存根,请使用Enumerable.Empty<type>().AsQueryable().