zoukankan      html  css  js  c++  java
  • 视图模型

    每个视图定义一个对象模型可以帮助你跟踪视图的真实所需。所以应该为每一个应用程序中的视图定义视图模型类。

    每个视图都应该有一个视图模型类。可以使用控制器名称和视图名称的一个组合。例如,从Home控制器调用的命名Index的视图,其视图模型对象可能被命名为HomelndexViewModel。

    更好的做法是,可以在Models文件夹中创建一个名为Home的子文件夹,并在其中建立一个IndexViewModel类。

    那么如何开发一个视图模型类呢?

    首先,视图模型对象是一个只有数据而(几乎)没有行为的普通数据传输对象,视图模型对象上的属性会完全以视图所期望的格式公开数据,它只提供视图所需的数据。围绕视图而非数据来设计视图模型类的结构往往是原则。换句话说,应该倾向于把视图模型类设计为一个容器。视图模型类,最终是为视图建模,而不是为数据。

    其次使用一个视图模型对象时,必须在视图模板中声明该视图模型类型。如在视图模板中声明:@model xxxxViewModel。

    最后,但具有更好可重用性和预期更长使用寿命的大型项目中,可能要以所使用的所有视图模型类来创建一个独立的类库。在小项目中,可能需要把所有的类隔离到一个特定的文件夹中。可以在Models文件夹创建一个ViewModels文件夹,并将其按控制器设置专属的子文件夹。

    例如:

    Models》ViewModels》控制器名称》IndexViewModel.cs

    Models》ViewModels》控制器名称ABCD》ABCDsyViewModel.cs

  • 相关阅读:
    两次动态输入和while的结合使用
    索引切片步长
    12.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)
    输出1-100的所以奇数或偶数
    求1-2+3-4+5 ... 99的所有数的和
    求1-100所有数的和
    三次登录机会
    while输入12345689
    while和格式化输出的复合使用
    44
  • 原文地址:https://www.cnblogs.com/chonghanyu/p/6754630.html
Copyright © 2011-2022 走看看