zoukankan      html  css  js  c++  java
  • 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,还有可能会报错!

  • 相关阅读:
    Q15格式表示负小数
    音频算法处理笔试面试题
    有符号和无符号之间的转化
    PE5 Smallest multiple
    PE3 Largest prime factor(最大素数因子)
    PE2 Even Fibonacci numbers(最大菲波那列偶数)
    PE 4 Largest palindrome product(最大回文)
    PE1 Multiples of 3 and 5
    Codevs高精度入门(减法、加法和乘法)解题报告
    计算机网络学习笔记(二) 计算机网络结构
  • 原文地址:https://www.cnblogs.com/min-min-min/p/5625264.html
Copyright © 2011-2022 走看看