Как использовать хранимые процедуры в EF Core 3.0?
Я пробовал следующее
var user = await _context.Query<User>().FromSql("EXECUTE dbo.spGeneral_Authenticate").FirstOrDefaultAsync();
var user = await _context.Query<User>().FromSqlRaw("EXECUTE dbo.spGeneral_Authenticate").FirstOrDefaultAsync();
var user = await _context.Set<User>().FromSql("EXECUTE dbo.spGeneral_Authenticate").FirstOrDefaultAsync();
var user = await _context.Set<User>().FromSqlRaw("EXECUTE dbo.spGeneral_Authenticate").FirstOrDefaultAsync();
Ядро EF неправильно переводит SQL. Я получил переведенный SQL из файла журнала.
2019-09-27 11:21:36.086 +05:30 [Ошибка] Не удалось выполнить DbCommand ("30" мс) [Параметры=[""], CommandType='Text', CommandTimeout='30']" ""SELECT TOP(1) [u].[FullName], [u].[Пароль], [u].[Имя пользователя] FROM ( EXECUTE dbo.spGeneral_Authenticate ) AS [u]" 27 сентября 2019 г. 11:21:36.154 + 05:30 [Ошибка] Исключение при повторении результатов запроса для типа контекста "__________Context"'." ""Microsoft.Data.SqlClient.SqlException (0x80131904): неверный синтаксис рядом с ключевым словом "EXECUTE". Неверно синтаксис рядом с ')'.
Переведенный SQL:
SELECT TOP(1) [u].[FullName], [u].[Password], [u].[UserName]
FROM (
EXECUTE dbo.spGeneral_Authenticate
) AS [u]