. NET Core 3.1 - EntityFrameworkCore - DBContext.Query устарел - PullRequest
0 голосов
/ 29 мая 2020

Я нахожу много примеров и руководств, в которых функции устарели, но трудно найти им замену

вот пример, функция запроса устарела, но я не могу найти, что использовать вместо нее

SqlParameter usernameParam = new SqlParameter("@username", usernameVal ?? (object)DBNull.Value);
SqlParameter passwordParam = new SqlParameter("@password", passwordVal ?? (object)DBNull.Value);

string sqlQuery = "EXEC [dbo].[LoginByUsernamePassword] @username, @password";

lst = await context.Query<Authenticate>().FromSql(sqlQuery, usernameParam,passwordParam).ToListAsync();    

в этом случае эта строка не компилируется:

lst = await context.Query<Authenticate>().FromSql(sqlQuery, usernameParam, passwordParam).ToListAsync();

context beeing a DbContext instance

кто-нибудь знает, как это исправить?

Я проверил microsoft do c, он говорит, что он устарел, но не указывает на его замену

1 Ответ

2 голосов
/ 29 мая 2020

Замена Query<T>() - Set<T>().

Итак, следуя вашему примеру, это будет примерно так:

lst = await context.Set<Authenticate>().FromSqlRaw(sqlQuery, usernameParam,passwordParam).ToListAsync();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...