[英]How can I call stored procedure inside for loop everytime and store results in Database
嗨,我正在ASP.NET MVC項目上。 這是我的代碼:
string[] dt1;
for (int ic = 0; ic < dt.Count() - 1; ic++)
{
dt1 = new string[3];
dt1 = dt[ic].Split('|');
var date = Convert.ToDateTime(dt1[0].Substring(0, dt1[0].IndexOf("GMT")).Trim()).ToShortDateString();
var time = Convert.ToDateTime(dt1[0].Substring(0, dt1[0].IndexOf("GMT")).Trim()).ToShortTimeString();
//Calling Stroed Procedure
var schedulesp = orderdata.uspApp_InsertScheduler(Convert.ToInt32(outputresults), newid, Name, Convert.ToDateTime(date),time);
orderdata.SaveChanges();
}
我在這里瀏覽日期和時間。 每當我遍歷日期和時間時,我都需要插入新記錄,這是我需要插入記錄的5倍。
但是,當我運行上述代碼時,它總是只保存最后的結果,即第五個結果。
那么如何將所有結果保存到數據庫中呢?
更新:這是存儲過程代碼:
ALTER PROCEDURE [dbo].[uspApp_InsertScheduler]
@ID int = 0,
@UserID int = 0,
@ReportName nvarchar(50) = 0,
@ScheduleStartDate date,
@SchedulestartTime nvarchar(10) = 0
AS
BEGIN
IF EXISTS (SELECT * FROM App_ReportsScheduler where id = @ID )
BEGIN
UPDATE App_ReportsScheduler
SET
reportName = @ReportName, schedule_StartDate = @ScheduleStartDate, schedule_starttime = @SchedulestartTime
where id = @ID
END
ELSE
BEGIN
INSERT INTO App_ReportsScheduler (ID, UserID, reportName,schedule_StartDate,schedule_starttime)
values ( @ID, @UserID,@ReportName,@ScheduleStartDate,@SchedulestartTime)
END
END
GO
只需輸入orderdata.SaveChanges(); 在循環之外
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.