私のコントローラーには、データベースからの情報を保持するモデルを作成するメソッドがあります。メソッド内にロジックを作成して、モデルに既にデータが含まれているかどうかを確認する方法はありますか? これSelectCompanyFromDropdown()
は、ユーザーが別のページに移動するたびに呼び出されますが、データベース呼び出しを減らすためにチェックしたいと思います。グローバル変数でうまくいくかどうか疑問に思っていますが、グローバルのデバッグで問題が発生する可能性があることはわかっています。
pseudo:
if(Model != null)
Run Method
return PartialView(new model)
Else
return PartialView(existing model)
コントローラ メソッド: public PartialViewResult SelectCompanyFromDropdown() {
var coid = Lt.GetThisUsersCoId();
var model = new CompanyViewModel();
using (var dc = new CompanyViewModelDbContext())
{
var content =
(from cr in db.CompanyRelationship
//This is grabbing all related companies to the logged in user
join c in db.Companies on cr.CoId equals c.CoId
where cr.PartnerCoId == coid
select new
{
cr.CoId,
c.CompanyName
}).Distinct().ToDictionary(cr => cr.CoId, c => c.CompanyName);
model.Companies = content;
}
return PartialView(model);
}
これはモデルをビューに送信してドロップダウンを作成していますが、ユーザーがページを変更するたびに既存のモデルを参照したいと思います。