如果將信息保存到下面的會話代碼,屬於如下所示的控制器操作或應該是我的模型的一部分,我有點困惑嗎?MVC:是否將數據放入緩存或會話屬於控制器?
我會補充說我有其他控制器方法,以後會讀取這個會話值。
public ActionResult AddFriend(FriendsContext viewModel)
{
if (!ModelState.IsValid)
{
return View(viewModel);
}
// Start - Confused if the code block below belongs in Controller?
Friend friend = new Friend();
friend.FirstName = viewModel.FirstName;
friend.LastName = viewModel.LastName;
friend.Email = viewModel.UserEmail;
httpContext.Session["latest-friend"] = friend;
// End Confusion
return RedirectToAction("Home");
}
我想到了將在我的模型的靜態實用類,它不喜歡的東西下面,但它只是似乎愚蠢添加2行代碼在另一個文件中。
public static void SaveLatestFriend(Friend friend, HttpContextBase httpContext)
{
httpContext.Session["latest-friend"] = friend;
}
public static Friend GetLatestFriend(HttpContextBase httpContext)
{
return httpContext.Session["latest-friend"] as Friend;
}
爲什麼存儲操作屬於控制器?請打開維基百科並閱讀管理員的職責。 – 2013-04-28 10:51:20
** [請點擊此處](http://stackoverflow.com/a/735148/2007801)** – 2013-04-28 13:37:33