Sal*_*007 9 c# asp.net asp.net-mvc asp.net-mvc-3
我知道我们可以使用访问模型元数据
var metaData = ModelMetadataProviders.Current.GetMetadataForType(() => Model, Model.GetType());
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是一种只使用它的类名访问模型元数据的方法,没有它的实例(可能类似于ModelMetadataProviders.Current.GetMetadataForType(Model.GetType())).有没有一种简单的方法来实现这一目标?
Dar*_*rov 14
您不需要实例来访问类型的元数据:
var metaData = ModelMetadataProviders
.Current
.GetMetadataForType(null, typeof(SomeViewModel));
Run Code Online (Sandbox Code Playgroud)
如果您拥有的是表示类型名称的字符串,则可以从此字符串加载类型:
var metaData = ModelMetadataProviders
.Current
.GetMetadataForType(null, Type.GetType("AppName.Models.MyViewModel"));
Run Code Online (Sandbox Code Playgroud)