この方法で Page_Load にデータをバインドするグリッドがあります。
List<ProductEventCheck> ruleset = (from s in (this.Page as BasePage).DbContext.ProductEventChecks
where s.Sequence != 0
orderby s.Sequence
select s).ToList<ProductEventCheck>();
rulesGrid.DataSource = ruleset;
rulesGrid.DataBind();
したがって、名前と説明がデータベースからのものである名前、説明、およびステータスの3つの列があり、ステータスはストアドプロシージャの実行に依存します。基本的に Name フィールドはプロシージャ名です。だから、私は実行する21のストアドプロシージャを持っています。だから、3秒ごとにステータスフィールドの処理を表示できるようにタイマーを実行したかったのですが、私が書いたコードは、すべての手順が実行された後にのみ更新されます。私がやっている問題や間違いを知るのを手伝ってくれませんか?
protected void Timer1_Tick(object sender, EventArgs e)
{
string proc = "";
int result = 0;
GridItemCollection gridRows = rulesGrid.Items;
foreach (GridDataItem data in gridRows)
{
proc = Convert.ToString(data["Name"].Text);
RunProcedure(proc, out result);
if (Convert.ToInt32(result) == 0)
{
data["statusResult"].Text = "Failure";
RadButtonContinue.Enabled = false;
break;
}
else
{
data["statusResult"].Text = "Completed";
continue;
}
}