私はMVCにかなり慣れていないので、何か欠けている場合はご容赦ください。
コントローラーの 1 つで、何らかの処理を行い、次のような文字列を出力するクラスを開始します。
[HttpPost]
public ActionResult Check(string reg)
{
string sCarmodel;
GetRegInfo gri = new GetRegInfo(reg, out sCarmodel);
Session["test"] = sCarmodel;
return View("Check");
}
ここまでは順調で、sCarmodel の出力はセッションに正しく保存され、後でビューでアクセスできます。ただし、クラスを完了するのに時間がかかるため、クラスを別のスレッドに配置する必要があり、View aschyncronosly を返す必要があります。だから私はこれを試しました:
[HttpPost]
public ActionResult Check(string reg)
{
var getreginfoThread = new Thread(
() =>
{
string sCarmodel;
GetRegInfo gri = new GetRegInfo(reg, out sCarmodel);
Session["test"] = sCarmodel;
}
);
getreginfoThread.Start();
return View("Check");
}
「sCarmodel」の値をクラス自体からデータベースに格納できることはわかっていますが、データベースの使用をスキップする方法を探していました。null
スレッドを使用すると、sCarmodel の値が Session に格納されず、後で取得しようとするとSession が格納されます。
スレッド内でクラスから値にアクセスする方法について誰かアドバイスをいただけますか?
ありがとう!
編集: 問題は解決しました。提案してくれたみんなに感謝します!