數據庫首先
首先,你有你的存儲過程添加到的.edmx文件。 如果你有一個上下文變量_DBContext和存儲的過程被稱爲LandMarkInOutReport,你可以這樣執行它:
LandMarkInOutReport_Result returnValue = _DBContext.LandMarkInOutReport(report.ReportParameters.StartDate, report.ReportParameters.EndDate, Convert.ToInt64(paramArr1[3]), Convert.ToInt32(paramArr1[9]), Convert.ToInt32(paramArr1[11]), paramArr1[5], paramArr1[7]).FirstOrDefault();
沒有.FirstOrDefault()
的存儲過程調用沒有在數據庫上執行。
現在你可以使用的returnValue調用正確的變量如:returnValue.ReturnVariableName。
代碼優先
可以調用存儲過程.SqlQuery <>:
int returnValue = _DBContext.SqlQuery<int>("LandMarkInOutReport @StartDate, @EndDate, @param3, @param4, @param5, @param6, @param7",
new SqlParameter("StartDate", report.ReportParameters.StartDate),
new SqlParameter("EndDate", report.ReportParameters.EndDate),
new SqlParameter("param3", Convert.ToInt64(paramArr1[3])),
new SqlParameter("param4", Convert.ToInt32(paramArr1[9])),
new SqlParameter("param5", Convert.ToInt32(paramArr1[11])),
new SqlParameter("param6", paramArr1[5]),
new SqlParameter("param7", paramArr1[7])).FirstOrDefault();
'INT returnVal = _DBContext.LandMarkInOutReport(report.ReportParameters.StartDate,report.ReportParameters。 EndDate,Convert.ToInt32(paramArr1 [3]),Convert.ToInt32(paramArr1 [9]),Convert.ToInt32(paramArr1 [11]),paramArr1 [5],paramArr1 [7]);'This should work。 – Mairaj
@Mairaj bro它返回vonversion錯誤 – ARC