2014-12-21 5 views
0

Это, вероятно, простой вопрос, но я не смог найти ответ. У меня есть хранимая процедура, которая принимает параметр DateTime как так:Вызов хранимой процедуры с параметром DateTime в Entity Framework 6

ALTER PROCEDURE [dbo].[spGetSchedule] 
(
    @theDate DATETIME, 
    @teamId INTEGER 
) 
... 

И я пытаюсь назвать это так:

_context.Database.ExecuteSqlCommand("spGetSchedule", 
    new SqlParameter("theDate", DateTime.Now.Date), 
    new SqlParameter("teamId", teamId)); 

я получаю сообщение назад говорил мне, что параметр @theDate не было предоставлено.

Заранее благодарим за любую помощь.

+0

новый SqlParameter ("@ theDate", DateTime.Now.Date), новый SqlParameter ("@ TeamID", TeamID)); – dbugger

+0

Нет, я тоже это пробовал, не работает. – Aetherix

ответ

1

Имена должны содержать @. Также необходимо включить имена параметров в команду.

_context.Database.ExecuteSqlCommand("spGetSchedule @theDate, @teamId", 
    new SqlParameter("@theDate", DateTime.Now.Date), 
    new SqlParameter("@teamId", teamId)); 
    spGetSchedule @theDate, @teamId. 
Смежные вопросы