Я смог издеваться над DbSet
из фреймворка сущности с помощью Moq, используя эту ссылку .
Однако теперь я хотел бы знать, как я мог бы высмеивать вызов SqlQuery. Не уверен, что это возможно или как он полагается на насмешливый контекст db, зная, что вызывает запрос.
Ниже я пытаюсь высмеять.
var myObjects = DbContext.Database
.SqlQuery<MyObject>("exec [dbo].[my_sproc] {0}", "some_value")
.ToList();
Я в настоящее время ничего не пробовал, так как не знал, как начать издеваться над этим примером.
Издевка DbSet
ниже и повторная итерация, я могу правильно высмеять возврат DbSet
из MyObject
, но теперь я пытаюсь высмеять SqlQuery, который возвращает список MyObject
.
var dbContext = new Mock<MyDbContext>();
dbContext.Setup(m => m.MyObjects).Returns(mockObjects.Object);
dbContext.Setup(m => m.Database.SqlQuery... something along these lines