У меня есть один метод, как показано ниже -
public string SomeMethod() {
var resultfromdb = from u in dbContext.TableOne.FromSql("Some select query here")
join rm in dbContext.TableTwo on u.Id equals rm.FId
select new SomeObject() {
/* returning some prperty */
};
//some business code here
return someresult;
}
Теперь, когда я пишу модульный тест для этого метода с использованием Xunit, я сталкиваюсь с ошибкой ниже при From Sql method
Ошибка:
Не удалось разобрать значение выражения '(Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable`1 [TableOne]). От Sql (значение (Microsoft.EntityFrameworkCore.RawSqlString) ), __p_0) ': эта перегрузка метода' Microsoft.EntityFrameworkCore.RelationalQueryableExtensions.From Sql 'в настоящее время не поддерживается.
Метод тестирования
[Fact]
public void Test_Method()
{
using (var context = new dbContext())
{
//Arrange
PrefillData(context);//In this method i wll add some dummy data to dbcontext
//some mocking for other code
//Act
var result = SomeMethod();
//Assert
Assert.Equal(expectedString, result);
}