controller向view传值方式总结(转载)
原网址:
总结发现ASP.NET MVC中向View传值的方式共有6种,分别是:
首先我们需要明确的是我们从向view传值的时候,这些方式分别处于什么样的地位:
我们一般会向页面传递一个主要的类型的数据,一般是情况下是一个List,如果只有这个,很好办,一个model对象就解决了,但是往往除此之外还会有一些额外的零散的数据需要传递,比如分页的,或者等等,这样的数据用原有的model就无能为力了,这时候,我们就可以用、、来传递这些额外的数据。
、、之间的差别:
与之间非常相似,两者使用的场景基本一致,但是的类型是很明确的,使用的时候经常需要强制类型转换,而的类型是动态的,不确定的,直接就可以使用,他们的传值范围是:向view传值,view自己和自己传值。而存在的目的就是为了防止时候数据的丢失,所以它的传值范围是当前和跳转后的之间。
下面来详细的讲述他们的具体用法:
我们可以认为 =+ the ,接下来你就可以体会到这个公式的含义了。
1、向view传值
2、view向view传值:
3、利用传递一个对象:
1、的基本用法
2、转换成 :
3、转换成 :
用于在的时候保存数据,、在跳转后就会变成null,但是不会,下面是的用法示例:
dex()
=()
Body="Start",
=5
};
[""]=model;
on("About");
out()
=[""];
(model);
普通页面传递model:
//代码
dex()
=();
p.Name="Toy";
(p);
在View中调用的代码:
:
向强类型试图传递model
1、 的试图的实现:
//的代码
dex()
=();
p.Name="Toy";
(p);
View中的代码