zoukankan      html  css  js  c++  java
  • MVC入门学习笔记(二)

    二.页面传值

       MVC 模式一个典型的特征是严格的功能隔离。Model模型、Controller 控制器和 View视图各自定义了用和职责,且相互之间定义好的方式进行沟通。这有助于提升测试性和代码重用。 当 Controller 决定呈现HTML 响应给客户端是,它负责显式传递给View 模板所有需要的数据。View 模从不执行任何数据查询或应用程序逻辑  –  仅仅负责呈现 Model或 Controller 传递过来的数据。

    1.ViewData[]字典:


       1.简单的传值

       a.首先我们在控制器HomeController.cs中创建一个ViewData[]字典:

       public ActionResult Index()
            {
                ViewData["strValue"] = "这是一个传递的值";//这里是我们传递的ViewData[]

                return View();
            }

       b.然后我们就可以在相对应得Index.aspx中写上:

        <%: ViewData["strValue"] %>

       c.编译运行,我们就可以看到在View页面中已经可以看到我们在Controller传过来的值了

      


     看到了吗?用这样的传值方法就是这样简单

     2.复杂的传值

      a.当然,我们不仅仅可以为一般的值类型进行传值,也可以为引用类型进行传值,在控制器HomeController.cs中创建一个ViewData[]字典:

       public ActionResult Index()
            {
                List<string> s=new List<string>();
                s.Add("Mane");
                s.Add("是我");
                ViewData["strValue"] = s;

                return View();
            }

      b.然后我们就可以在相对应得Index.aspx中写上:

        <% foreach (string str in ViewData["strValue"] as List <string>){ %>
        <%=str %>
        <%} %>

      c.编译运行,我们就可以看到在View页面中已经可以看到我们在Controller传过来的值了

       


     其实传值远不只这些,还可以为类,等等进行传值,这里不做介绍,下面看另外的一种传值模式


    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/mane_yao/archive/2010/07/07/5718143.aspx

  • 相关阅读:
    对象的深度复制和浅复制 (深度拷贝和浅拷贝)
    包容网关 Inclusive Gateway
    一文带你了解js数据储存及深复制(深拷贝)与浅复制(浅拷贝)
    撸一个简单的vue-router来剖析原理
    vue-组件化-插槽(slot)
    从0开始探究vue-组件化-组件之间传值
    从0开始探究vue-公共变量的管理
    从0开始探究vue-双向绑定原理
    【图机器学习】cs224w Lecture 16
    【图机器学习】cs224w Lecture 15
  • 原文地址:https://www.cnblogs.com/mane/p/1830074.html
Copyright © 2011-2022 走看看