Я создал веб-сайт (это рос объект) модель связующий, которая проверяет сессию: общественного класс WebsitesModelBinder: IModelBinder { частного Const строки websitesSessionName = «SelectedSite»;ModelBinder не обновляет сеансовый ключ
#region IModelBinder Members
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
if (bindingContext.Model != null)
throw new InvalidOperationException("Invalid");
Website site = (Website)controllerContext.HttpContext.Session[websitesSessionName];
if (site == null)
{
site = new Website();
controllerContext.HttpContext.Session[websitesSessionName] = site;
}
return site;
}
#endregion
}
В файле global.asax я зарегистрировал привязку к модели для веб-сайта typeof. В действии моего контроллера действие получает веб-сайт в качестве параметров и обновляет его, например: общедоступные сайты ActionResult (сайт SelectedSite) {
var sites = db.Websites.ToList(); if (SelectedSite.ID == 0) SelectedSite = sites [0]; ViewData ["Selectedsite"] = SelectedSite;
return View(sites);
}
Однако модель связующий никогда не обновляет сессии Любые идеи?
Ваше форматирование немного не делает код более трудным для чтения. – smaclell