zoukankan      html  css  js  c++  java
  • MVC 传值

    1、ViewBag

        Controller:ViewBag.Message = "Hello, Word";
        View:@ViewBag.Message

       注:ViewBag的类型是动态的,不确定的,直接就可以使用,它的传值范围是:controller向view传值,view自己和自己传值。

    2、ViewData

       Controller:ViewData["message""] = "Hello, Word";
       View: string message = ViewData["message"] as string;
                 @message

       注:ViewData的类型是很明确的,使用的时候经常需要强制类型转换,它的传值范围是:controller向view传值,view自己和自己传值。

    3、TempData

        Controller: TempData["message"] = "Hello, Word";
        Controller:if ("Hello, Word" == TempData["message"] as string) { TempData["message"] = "Hello!"; }
        View: string message = TempData["message"] as string;
                  @message

       注:TempData存在的目的就是为了防止redirect时候数据的丢失(ViewData、ViewBag在跳转后就会变成null,但是TempData不会),它的传值范围是当前controller和跳转后的controller之间。

    4、普通页面传递model

        Controller:StarModel p = new StarModel ();    p.Name = "Suk";  return View(p);
        View:<%: ((StarModel )Model).Name %>

    5、向强类型试图传递model

       a:(WebForm 的实现)
        Controller:StarModel p = new StarModel ();    p.Name = "Suk";  return View(p);
        View: <%@ Page Inherits="System.Web.Mvc.ViewPage<StarModel >" %>
                   <%: Model.Name %>

       b:(Razor 的实现)
        Controller:StarModel p = new StarModel ();    p.Name = "Suk";  return View(p);
        View:@model MOTest.Models.StarModel
                 @Model.Name

    6、ViewModel

        Controller:  var StarModelTest = new StarModel (p);   return View(StarModelTest );
        View: @model MOTest.Models.StarModelTest
                  @Model.Name

    7、RedirectToAction

       a:(传递实体类)
        RedirectToAction(控制器,控制器方法,实体类)

       b:(传递字符串)
       RedirectToAction(控制器,控制器方法,new{name=value,....})


  • 相关阅读:
    [OpenGL(C)] 旋转立体三角形
    [MSSQL] (命令)列出所有表.字段名.主键.类型.长度.小数位数等信息
    [端口] 端口大全及端口关闭方法
    [网络] IP的划分,超详细
    [C++] 面向对象院校管理系统
    [JSVM2] (开源)JS星际争霸(for JSVM2)
    [MSSQL,MySQL,Oracle] Join用法
    [其它] .NET 世界排名榜
    [C] (回溯法)计算总费用最小费用
    [OpenGL(Win32)] 3D 轮廓字体
  • 原文地址:https://www.cnblogs.com/LoveSuk/p/6213974.html
Copyright © 2011-2022 走看看