MVC使用AdditionalMetadata为Model属性添加额外信息_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > MVC使用AdditionalMetadata为Model属性添加额外信息

MVC使用AdditionalMetadata为Model属性添加额外信息

 2014/6/8 12:25:19  Darren Ji  程序员俱乐部  我要评论(0)
  • 摘要:当需要为Model的属性添加一些额外信息的时候,使用[AdditionalMetadata("somekey","somecontent")]是不错的选择,MVC内部把键值信息赋值给了ModelMetadata.AdditionalValues属性。那么,在视图中如何获取该属性的ModelMetadata呢?ModelMetadata提供的静态方法FromLambdaExpression()可以根据属性和ViewData获取到该属性的ModelMetadata
  • 标签:MVC 使用

当需要为Model的属性添加一些额外信息的时候,使用[AdditionalMetadata("somekey", "some content")]是不错的选择,MVC内部把键值信息赋值给了ModelMetadata.AdditionalValues属性。那么,在视图中如何获取该属性的ModelMetadata呢?

 

ModelMetadata提供的静态方法FromLambdaExpression()可以根据属性和ViewData获取到该属性的ModelMetadata:

1

 

在Model中为某属性打上AdditionalMetadata特性:

using System.Web.Mvc;

namespace MvcApplication1.Models
{
    public class WorlCup
    {
        [AdditionalMetadata("k", "2014巴西世界杯参赛队伍名称")]
        public string TeamName { get; set; }
    }
}

 

在视图中:

@model MvcApplication1.Models.WorlCup

@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Index</h2>

@ModelMetadata.FromLambdaExpression(x => x.TeamName, ViewData).AdditionalValues["k"]
@Html.EditorFor(x => x.TeamName)
发表评论
用户名: 匿名