zoukankan      html  css  js  c++  java
  • MVC中的@model与Model

    @model模型定义

          使用@model关键字可以定义一个Action里所对应的一个模型(经常可以叫他实体类),其实是对动态变量进行实例化,这样就可以直接在cshtml文件中调用“Model”变量。而这个模型的实例,需要通过Controller进行传输,如果没有则“Model”将为null模型可以是一个实体类,也可以是一个列表实例,字典对象都可以进行定义,但是和Controller中的Action传回来的实例一定要一样,否则将会出现错误。

    Model 定义

          MVC的第一个字母M是Model,承载着View层和Controller之间的数据传输,是数据传输的载体,通过Model层,解偶了View层和Controller层。MVC框架中Model层的主要关注点是如何把请求的数据自动装配成Action所需要的bean,除此外,框架Model层还可以提供复合bean自动装配、输入校验、本地化及国际化、字符集编码转换、多重输出等功能。

    (1)定义Model实体

    public class SearchWithFundingList
    {
    /// <summary>
    /// 方案分类
    /// </summary>
    public int ProjectCategory { get; set; }
    /// <summary>
    /// 发起时间小
    /// </summary>
    public string MinAddDate { get; set; }
    /// <summary>
    /// 发起时间大
    /// </summary>
    public string MaxAddDate { get; set; }
    /// <summary>
    /// 状态
    /// </summary>
    public int State { get; set; }
    /// <summary>
    /// 昵称
    /// </summary>
    public string NickName { get; set; }
    /// <summary>
    /// 用户id
    /// </summary>
    public int Mid { get; set; }
    }

    (2)传递Model

    private SearchWithFundingList GetFormWithFundingNow(int id, int uid)
    {
    SearchWithFundingList model = new SearchWithFundingList();
    model.Mid = uid;
    model.State = WithFundingStateKey.Doing;
    model.ProjectCategory = id;
    return model;
    }

    注意:一定要在最后return 实体,不然前台的Model实体是null 

    (3)具体调用

    在页面代码最上面添加上实体的声明

    @{Layout = null;}
    @model StockFunds.Entities.DTO.SearchWithFundingList

    接下来就可以在页面里使用Model(这里的实体就是指SearchWithFundingList实体),并且此时的Model已经是强类型了,我们可以点出具体的属性,非常方便<span class="state">Model.State</span>元</span>  

  • 相关阅读:
    HDU 5821 Ball (贪心)
    hdu 5826 physics (物理数学,积分)
    HDU 5831 Rikka with Parenthesis II (贪心)
    HDU 2669 Romantic (扩展欧几里得定理)
    POJ 2442 Sequence
    HDU 3779 Railroad(记忆化搜索)
    博客园首页新随笔联系管理订阅 随笔- 524 文章- 0 评论- 20 hdu-5810 Balls and Boxes(概率期望)
    hdu 5813 Elegant Construction (构造)
    hdu 5818 Joint Stacks (优先队列)
    C#字段和属性
  • 原文地址:https://www.cnblogs.com/wyongqi/p/7675969.html
Copyright © 2011-2022 走看看