ASP.Net MVC数据传递

Posted 强大的程序猿人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.Net MVC数据传递相关的知识,希望对你有一定的参考价值。

今天做了个项目,涉及到离线下载html,没有前后台交互,没有Ajax,javascript,只有第一次从控制器带参数进入,一次读取到页面所需要的全部数据,使用Razor语法绑定到前台页面,在做这个项目的时候,遇到了一个问题就是:前台页面需要绑定很多数据,可以分成很多个模块,但是有不能使用合适的easyui控件,不能简单的使用单个List或者单个Model想前台传数据。我们都知道简单的传递单个的方法:

方法一:直接返回单个LIst

后台:取到List数据直接返回前台——return view(List)

前台:引用List对应的模型——@model.List

方法二:使用viewBag

后台:viewBag.listDome=list;(list为后台查询到的数据)

前台:直接foreach(var item in viewBag.List){...}循环里就可以吧item看成一个对象从而循环遍历List里的内容

其实这种方法可以传多个List,就是每次都要ViewBag一下,挺麻烦的,所以就有更加灵活的方法三

方法三:使用model传多个List

后台:这个方法其实也是定义model(Listview),只不过在模型里面多定义了一些要传到前台的List,并且单独给List赋值,我们需要定义一个有模型生成的View,将List作为这个View的属性,分别给Listview得属性赋值,之后return view()

前台:1.先引用模型Listview(@。。。。.model.Listview)

2.使用model作为对象,需要访问里面的List,就可以使用对象引用属性的方法,(使用model.list名),要循环遍历也是直接使用foreach,次方法可以有智能提示里面的List,属于强类型,而使用方法二的话属于弱类型,使用viewBag并不能有智能提示里面的List,还有可能会报错!

以上是关于ASP.Net MVC数据传递的主要内容,如果未能解决你的问题,请参考以下文章

Asp.net MVC中 Controller 与 View之间的数据传递

在 ASP.NET MVC 中将数据传递到母版页

ASP.Net MVC数据传递

ASP.NET MVC中Controller与View之间的数据传递

asp.net mvc 在视图和控制器之间传递参数

如何将数据从表示层传递到业​​务逻辑层? (ASP.NET MVC 5)