我正在尝试设置moq,但我需要创建一个假的IQueryable。我做了一个收藏,但我不知道如何把它投入到IQueryable。
Collection<DetailDataEntity> DetailDataEntityCollection =
new Collection<DetailDataEntity>();
DetailDataEntity DetailDataEntity = new DetailDataEntity();
DetailDataEntity.FeedTypeID = 1;
DetailDataEntityCollection.Add(DetailDataEntity);
_mockRepository.Setup(x => x.GetDetail(It.IsAny<Int32>(),
It.IsAny<Enum.FeedTypeEnum.FeedType>()))
.Returns(DetailDataEntityCollection);
答案 0 :(得分:8)
只需在您的收藏中调用AsQueryable
即可。
_mockRepository.Setup(x => x.GetDetail(It.IsAny<Int32>(),
It.IsAny<Enum.FeedTypeEnum.FeedType>()))
.Returns(DetailDataEntityCollection.AsQueryable());
答案 1 :(得分:0)
我有一个简单的 ICollection 对象,发现这对我有用:
var tapSettings = xfmrTapSettings.ToList().AsQueryable();
我必须在 AsQueryable 前面使用 ToList 才能使其工作。