zoukankan      html  css  js  c++  java
  • 如何指定模型的显示格式和模板

    你可以通过使用下列方法指定的格式或模板的模型属性:

    • DisplayFormat属性应用到模型中的属性。例如,以下代码会导致要没有时间显示的日期:

      [DisplayFormat(DataFormatString="{0:d}")]    //[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
      public DateTime ReleaseDate{get;set;}
    • 通过将DataType属性应用到模型中的属性和指定数据类型。例如,以下代码会导致要没有时间显示的日期。

      [DataType(DataType.Date)]
      public DateTime ReleaseDate{get;set;}

      如果应用程序包含一个ViewsSharedDisplayTemplates文件夹或ViewsMoviesDisplayTemplates文件夹中的date.cshtml(因为上面已经标记了类型为Date,否则文件名应为DateTime.cshtml,文件名不区分大小写)模板,该模板将用于呈现的DateTime属性。否则内置 ASP.NET 模板化系统显示的属性作为一个日期。
      如果上面两个文件夹中都存在同名文件,则使用Moives文件夹中的模板。
      模板格式样式如下:

      <span class="loud-1">
          @String.Format("{0:d}", Model.Date)
      </span>
    • 其名称ViewsSharedDisplayTemplates文件夹或ViewsMoviesDisplayTemplates文件夹中创建一个显示模板匹配的你想要设置格式的数据类型。例如,您看到了ViewsSharedDisplayTemplatesDateTime.cshtml用来呈现在模型中,DateTime属性,无需添加到模型属性,和通过任何标记添加到视图。

    • 使用的模型上的UIHint属性来指定要显示的模型属性的模板。
      [UIHint("LoudDateTime")]
      此种方法一般用于显示非常规属性。

    • 显式地将显示模板名称添加到Html.DisplayFor在一个视图中调用。
      @Html.DisplayFor(model => model.ReleaseDate,"LoudDateTime")

    使用的方法取决于您需要在您的应用程序中做什么。混合使用这些方法让正是您需要的格式种类。

  • 相关阅读:
    隐式类型转换
    STL::allocator rebind
    Proxy Class(代理类)
    C++ 没有合适的默认构造函数(无参数构造函数)
    E
    C
    Multiplication Puzzle POJ
    Brackets POJ
    Halloween Costumes LightOJ
    ACwing 139. 回文子串的最大长度(二分+Hash)
  • 原文地址:https://www.cnblogs.com/dotnetmvc/p/3655963.html
Copyright © 2011-2022 走看看