加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-16 04:37:06 所属栏目:asp.Net 来源:网络整理
导读:我有两个模型类,每个类都是数据库中的一个表.一种型号称为“衣服”,另一种型号称为“鞋子”. 我想在同一个剃刀视图中显示每个表的内容,但MVC只允许我向视图发送一个模型. @model IEnumerableTest.Models.Clothes 有没有办法将多个模型发送到剃刀视图? 如果
我有两个模型类,每个类都是数据库中的一个表.一种型号称为“衣服”,另一种型号称为“鞋子”.

我想在同一个剃刀视图中显示每个表的内容,但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 ;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读