我有一个 SP,我正在SqlQuery
使用DbContext.Database
. 我这样称呼它:
编辑1:-DateTime
现在通过
var t = form["datetime"];//value is 2013-May-08 09:30
DateTime dtm;
if (!DateTime.TryParse(t, out dtm))//successfully parses
dtm = new DateTime(2013, 05, 8, 9, 30, 0);
var rTime= new SqlParameter("@rTime", dtm);
var result = UoW.ExecuteSp<SPResult>("spResult @rTime", rTime).ToList();
最后一行抛出指定转换 from string
toDateTime
无效的异常。
以下是SP的定义。
ALTER PROC [dbo].[spResult]
(
@rTime SMALLDATETIME --VARCHAR(32)
)
AS
BEGIN
--OTHER CODE
END
如果我直接在 SQL Management Studio 中执行 SP,它运行没有任何问题:
EXEC spResult ='2013-May-08 09:30'
在 SP 中,字符串转换为日期时间,如下所示:
@resultAt SMALLDATETIME = CAST(@rTime AS SMALLDATETIME)
这里出了什么问题?