[英]How to return and handle two different models in one view ?
我有一个控制器,我要将一个User对象传递给另一个基于User模型的视图,该视图基于Stories模型。 精细。 现在,我将User对象返回到视图(一个基于Stories模型的视图),并希望在那里使用其属性,但是由于它基于Storys模型,因此它期望Stories对象并引发不匹配错误。
我该如何处理? 都喜欢
控制器(已将用户对象传递给的控制器)
[HttpGet]
public ActionResult GetImagesStories(Users u)
{
listofStories = bo.GetAllImages();
ViewBag.Grid = listofStories;
return View("GetImagesStories", u);
}
传递它的控制器。
[HttpPost]
public ActionResult Authenticate(Users u)
{
if (basicOps.getUsersLogin(u.UserName, u.Password))
{
u.UserID = 80909;
return RedirectToAction("GetImagesStories", "Stories", u);
}
return View("Authenticate");
}
第一个控制器返回的视图具有以下内容:
@model HimHer.Models.Stories
而不是将您的Users
作为ViewModel解析到视图,您应该在Stories
viewModel上具有属性User(s)
。
我通常在使用后为模型命名:
在传入的http调用中用作参数的模型,例如:UserRequestModel在视图中使用的模型,例如:UserViewModel在ajax / json上使用的模型返回:UserResponseModel
因此,如果ViewModel需要RequestModel中的数据,则可以传递这些属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.