元数据

07-MVC的精髓-元数据

什么是元数据?

元数据是视图模型的数据结构的描述对象。它是用来描述视图的模型字段。

比如我们制定视图的@model 是Person 那么元数据就用来描述这个Person的一些属性。

通过元数据我们可以取得字段的一些标注。有了这些标注,我们就可以呈现html 或者验证字段等

我们在System.Web.Http.Metadata下面可以看到ModelMetadata的源码

通过ViewData我们其实可以取得数据的元数据,元数据本身是一个树状的结构

它有一个Properties属性,本身由是一个ModelMetadata 它用来描述这个字段的元数据。

08-EditorTemplates字段模板的定义

我们使用EditorForModel的时候,可以使用一行代码,就可以把整个表单呈现出来

但是如果我们想要给每个字段不一样的html表单控件的时候,就需要我们通过editorTemplates来指定每个字段使用不同的模型。

下面我们就来试一下把我们的Notic来指定它的UIHint 它会对应一个模板cshtml

了解 EditorForModel

它可以把整个表单呈现出来。

<form>
    @Html.EditorForModel()
</form>Code language: HTML, XML (xml)

ModelMetadata.HideSurroundingHtml 属性

隐藏环绕它的html代码

当此属性与 DataAnnotationsModelMetadataProvider 模型元数据提供程序一起使用时,如果 HiddenInputAttribute 特性为 true 且 DisplayValue 属性设置为 false,则此属性设置为 true。

当此属性设置为 false 时,EditorFor 方法将 HTML div 元素呈现为模型的容器,并将 label 元素呈现为模型的标题。 当此属性设置为 true 时,不会呈现 div 和 label 元素。 当模板生成隐藏的 input 元素时,通常会使用此属性。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注