从类名获取模型元数据

时间:2011-04-15 09:26:16

标签: c# asp.net asp.net-mvc asp.net-mvc-3

我知道我们可以使用

访问模型元数据
var metaData = ModelMetadataProviders.Current.GetMetadataForType(() => Model, Model.GetType());

我正在寻找的是一种只使用它的类名访问模型元数据的方法,没有它的实例(可能类似于ModelMetadataProviders.Current.GetMetadataForType(Model.GetType()))。有没有简单的方法来实现这一目标?

1 个答案:

答案 0 :(得分:14)

您无需实例即可访问类型的元数据:

var metaData = ModelMetadataProviders
    .Current
    .GetMetadataForType(null, typeof(SomeViewModel));

如果您拥有的是表示类型名称的字符串,则可以从此字符串加载类型:

var metaData = ModelMetadataProviders
    .Current
    .GetMetadataForType(null, Type.GetType("AppName.Models.MyViewModel"));