Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从其类名获取模型元数据_C#_Asp.net_Asp.net Mvc_Asp.net Mvc 3 - Fatal编程技术网

C# 从其类名获取模型元数据

C# 从其类名获取模型元数据,c#,asp.net,asp.net-mvc,asp.net-mvc-3,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 3,我知道我们可以使用 var metaData = ModelMetadataProviders.Current.GetMetadataForType(() => Model, Model.GetType()); 我要寻找的是一种只使用模型的类名而不使用实例(可能类似于modelmataproviders.Current.GetMetadataForType(model.GetType())的方式)来访问模型元数据的方法。有没有一种简单的方法可以实现这一点?访问类型的元数据不需要实例: v

我知道我们可以使用

var metaData = ModelMetadataProviders.Current.GetMetadataForType(() => Model, Model.GetType());

我要寻找的是一种只使用模型的类名而不使用实例(可能类似于modelmataproviders.Current.GetMetadataForType(model.GetType())的方式)来访问模型元数据的方法。有没有一种简单的方法可以实现这一点?

访问类型的元数据不需要实例:

var metaData = ModelMetadataProviders
    .Current
    .GetMetadataForType(null, typeof(SomeViewModel));
如果您只有一个表示类型名称的字符串,则可以从此字符串加载类型:

var metaData = ModelMetadataProviders
    .Current
    .GetMetadataForType(null, Type.GetType("AppName.Models.MyViewModel"));
Type.GetType(“AppName.Models.MyViewModel”)
始终返回null,但
Type.GetType(“AppName.Models.MyViewModel,AppName,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”)返回正确的类型。谢谢你的提示!