微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net – 发送多个模型以查看MVC 4

我有两个模型类,每个类都是数据库中的一个表.一种型号称为“衣服”,另一种型号称为“鞋子”.

我想在同一个剃刀视图中显示每个表的内容,但MVC只允许我向视图发送一个模型.

@model IEnumerable<Test.Models.Clothes>

有没有办法将多个模型发送到剃刀视图?

如果没有,在已经传递给另一个模型的视图中显示一个模型的内容的常规方法是什么.谢谢你的建议.

解决方法

要么创建一个以类为对象的视图模型类.那将是类型安全的.
public class viewmodelFordisplay
{
       public Clothes Clothes {get; set;}
       public Shoes Shoes {get; set;}
}

//on Controller
Clothes objClothes = GetClothes();
Shoes objShoes = GetShoes();

viewmodelFordisplay objviewmodel = new viewmodelFordisplay() {Clothes = objClothes,Shoes= objShoes }

使用ViewBag.It的另一种简单方法是使用添加到C#4中的动态功能.它允许对象动态地添加属性.它也是Type Safe

ViewBag.Shoes= objShoes ;
ViewBag.Clothes= objClothes ;

您还可以使用ViewData将对象传递给html.这不是类型安全的.它需要铸造

ViewData["Clothes "] = objClothes ;
ViewData["Shoes "] = objShoes ;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐