У меня есть хранимая процедура с подписью
PROCEDURE [dbo].[spValidateID]
@ScanCode VARCHAR(50),
@Name VARCHAR(50) = NULL OUTPUT,
@ScanTime DATETIME = NULL OUTPUT,
@ValidationCode INT = 0 OUTPUT
Предполагается, что это вернет validationCode, а также заполнит переменные name и scanTime. Мне нужно указать значение scanCode при вызове.
в моем коде C #я делаю так.
using (var context = new DBEntities())
{
var pScanCode = new SqlParameter("ScanCode", scanCode);
var opName = new SqlParameter("Name", name);
var opScanTime = new SqlParameter("ScanTime", scanTime);
var opValidationCode = new SqlParameter("ValidationCode", validationCode);
var test = context.ExecuteStoreQuery<int>("spValidateID @ScanCode, @Name, @ScanTime, @ValidationCode", pScanCode, opName, opScanTime, opValidationCode);
}
но при запуске я получаю сообщение об ошибке Отсутствует сопоставление типа объекта System.RuntimeType с собственным типом известного управляемого поставщика.
Есть идеи??