C# MVC5-ViewData.ModelMetadata.Properties为空

C# MVC5-ViewData.ModelMetadata.Properties为空,c#,asp.net-mvc-5,entity-framework-6,C#,Asp.net Mvc 5,Entity Framework 6,我试图迭代模型的属性并打印显示名称- @foreach (var property in ViewData.ModelMetadata.Properties) { <th> <a href="@MyClass.GetSortableUrlString(property.DisplayName)">property.DisplayName</a> </th> } 我意识到上面的代码似乎试图获取IEnumerable的显示名,也许这就是问题

我试图迭代模型的属性并打印显示名称-

@foreach (var property in ViewData.ModelMetadata.Properties) 
{
<th>
    <a href="@MyClass.GetSortableUrlString(property.DisplayName)">property.DisplayName</a>
</th>
}
我意识到上面的代码似乎试图获取IEnumerable的显示名,也许这就是问题所在,但我不知道如何更改
ViewData.ModelMetadata.Properties
,使其脱离集合中包含的对象(
ViewData.First().ModelMetadata.Properties
也不起作用)

注意:正如您所看到的,我真正想做的就是将显示名转换为可排序的链接,所以我不关心迭代是如何进行的,只要它确实发生了,但是如果能够检索显示名而不是属性名就好了。还尝试覆盖Html.DisplayNameFor,但这可能是另一个问题

@model IEnumerable<MyProject.DataAccess.Models.Table1>