C# MVC通过@foreach打印每个枚举值 枚举: 我的看法是: @model IEnumerable @{ ViewBag.Title=“基础设施”; } 基础结构 @foreach(Enum.GetNames(typeof(ServerDB.Tables.Enum))中的var val) { @DisplayName((String.Format(“{0}{1}”,val,“2”))

C# MVC通过@foreach打印每个枚举值 枚举: 我的看法是: @model IEnumerable @{ ViewBag.Title=“基础设施”; } 基础结构 @foreach(Enum.GetNames(typeof(ServerDB.Tables.Enum))中的var val) { @DisplayName((String.Format(“{0}{1}”,val,“2”)),c#,asp.net-mvc,enums,C#,Asp.net Mvc,Enums,} @foreach(枚举中的var Ost.(typeof(ServerDB.Tables.Enum))) { @DisplayName((String.Format({0}),Ost))) } 如何打印产品旁边的值? 我将使用枚举中的数字进行查询搜索,这样我就可以搜索任何产品、任何用户或操作。 我不是这方面的专家,所以请温和一点。Enum.GetValues将枚举的值作为对象返回,因此您需要将它们强制转换为int值(使用int而不是var即可)。之后,您可以使用Enum.GetName获取

} @foreach(枚举中的var Ost.(typeof(ServerDB.Tables.Enum))) { @DisplayName((String.Format({0}),Ost))) } 如何打印产品旁边的值? 我将使用枚举中的数字进行查询搜索,这样我就可以搜索任何产品、任何用户或操作。
我不是这方面的专家,所以请温和一点。

Enum.GetValues
将枚举的值作为对象返回,因此您需要将它们强制转换为
int
值(使用
int
而不是
var
即可)。之后,您可以使用
Enum.GetName
获取特定值的名称:

@model IEnumerable<ServerDB.Tables.EntityType>

@{

    ViewBag.Title = "Infrastruktur";
}


<table class="table">
<tr>
    <th>

        <h2>Infrastruktur</h2>
    </th>

    <th></th>
</tr>

@foreach (var val in Enum.GetNames(typeof(ServerDB.Tables.Enum)))
{


    <tr>
        <td>
            @Html.DisplayName((String.Format("{0}{1}", val, "2")))

        </td>
        <td></td>
        <td>
            <p>
            </p>
        </td>
        <td></td>
    </tr>
}
@foreach (var Ost in Enum.(typeof(ServerDB.Tables.Enum)))
{
    @Html.DisplayName((String.Format("{0}", Ost)))
}

</table>

你必须把它转换成
int
比如:
Convert.ToInt32(val)
你能解释一下或者把我和什么是“转换”联系起来吗?非常感谢您的帮助。您需要重新输入枚举文本的值,因此必须将其转换为
int
,因为值是
int
请参见:现在,如果我将“2”切换为“2”,我将得到两个名称@user3439890我已经更新了答案,您应该将
var
更改为
int
关键字,以便它得到真实的答案value@user3439890太棒了,您可以将此标记为一个答案:)我认为您可以执行
val.ToString()
而不是
Enum.GetName(typeof(ServerDB.Tables.Enum),val)
@model IEnumerable<ServerDB.Tables.EntityType>

@{

    ViewBag.Title = "Infrastruktur";
}


<table class="table">
<tr>
    <th>

        <h2>Infrastruktur</h2>
    </th>

    <th></th>
</tr>

@foreach (var val in Enum.GetNames(typeof(ServerDB.Tables.Enum)))
{


    <tr>
        <td>
            @Html.DisplayName((String.Format("{0}{1}", val, "2")))

        </td>
        <td></td>
        <td>
            <p>
            </p>
        </td>
        <td></td>
    </tr>
}
@foreach (var Ost in Enum.(typeof(ServerDB.Tables.Enum)))
{
    @Html.DisplayName((String.Format("{0}", Ost)))
}

</table>
@foreach (int val in Enum.Values(typeof(ServerDB.Tables.Enum)))
{
   var name = Enum.GetName(typeof(ServerDB.Tables.Enum), val);

    <tr>
        <td>
            @Html.DisplayName((String.Format("{0}{1}", name, "2")))

        </td>
        <td>
            @val
        </td>
        <td>
            <p>

            </p>
        </td>
        <td>

        </td>
    </tr>
}
@foreach (var name in Enum.Values(typeof(ServerDB.Tables.Enum)))
{
    var val = (int)name;
    <tr>
        <td>
            @Html.DisplayName((String.Format("{0}{1}", name, "2")))

        </td>
        <td>
            @val
        </td>
        <td>
            <p>

            </p>
        </td>
        <td>

        </td>
    </tr>
}