這是我的代碼在服務器上:如何將實體框架SqlQuery和SqlParameter中的日期時間參數傳遞給存儲過程?
model.Grid.DataSource =
db.Database.SqlQuery<Reports.Cardex>("[dbo].[SP_RptCardexSummary_English_1] @OwnerCode, @TypeCode, @MeasurementUnitCode, @FDate",
new SqlParameter { ParameterName = "@OwnerCode", Value = filterList[0] },
new SqlParameter { ParameterName = "@TypeCode", Value = filterList[1] },
new SqlParameter { ParameterName = "@MeasurementUnitCode", Value = filterList[2] },
new SqlParameter { ParameterName = "@FDate", Value = filterList[3] })
.ToList();
,我的方法:
ALTER PROCEDURE [dbo].[SP_RptCardexSummary_English_1]
@OwnerCode int,
@TypeCode int,
@MeasurementUnitCode smallint,
@FDate datetime
更新: 我創建的字符串日期時間值:
var date = "2015/05/25";
var time = "20:30"
filterList.Add(Convert.ToDateTime(date + " " + time));
但是當我通過System.DateTime
值,它拋出一個異常:
「從物化」System.DateTime「類型到」System.String「類型的指定強制轉型無效。」
我該如何通過它?
有趣的是,當我將SQL Profiler設置爲觀察並運行SQL Profiler收到的內容時,它工作正常!有什麼問題?
是啊...你是對的!我很想念,但我更新了它。你能再看看嗎? – Braveheart6M6