Я запускаю хранимую процедуру в своей SQL Server Management Studio со строкой (информация о клиенте опущена):< /p>
Код: Выделить всё
EXEC spGetDupWOs @ProjectName=N'...', @City=N'...', @State=N'LA', @ProposalNum=N'201703080740-001', @County=N'...', @Owner=N'...', @QuoteRecipients=N'...', @ProjectID=-1
Используя профилировщик SQL Server, я определил, что Entity Framework отправляет эту строку на SQL-сервер:
Код: Выделить всё
exec sp_executesql N'EXEC spGetDupWOs',N'@ProjectName nvarchar(19),@City nvarchar(6),@State nvarchar(2),@ProjectNum nvarchar(12),@County nvarchar(10),@Owner nvarchar(23),@QuoteRecipients nvarchar(23),@ProjectID bigint',@ProjectName=N'...',@City=N'Holden',@State=N'LA',@ProposalNum=N'201703080740-001',@County=N'Livingston',@Owner=N'...',@BID_RECIP=N'...',@ProjectID=-1
Читая похожие вопросы, это выглядит так: проблема заключается в прослушивании параметров и изменении плана выполнения.
Вот мой вызов для выполнения хранимой процедуры в моем приложении:
Код: Выделить всё
List duplicateCheckResults =
db.Database.SqlQuery("spGetDupWOs",
spl.ToArray())
.ToList();
Подробнее здесь: https://stackoverflow.com/questions/427 ... -procedure