Model view controller 带有转换值的下拉列表

Model view controller 带有转换值的下拉列表,model-view-controller,Model View Controller,我的域中有这样的枚举 public enum AdTypeEnum { Sale = 1, Rent = 2, SaleOrRent = 3 }; <div class="editor-field"> @Html.DropDownListFor(x => x.AdType, new SelectList(Enum.GetValues(typeof(MyDomain.Domain.Property.AdTypeEnum)))) </div> 在我看来,我是这

我的域中有这样的枚举

public enum AdTypeEnum { Sale = 1, Rent = 2, SaleOrRent = 3 };
<div class="editor-field">
   @Html.DropDownListFor(x => x.AdType, new SelectList(Enum.GetValues(typeof(MyDomain.Domain.Property.AdTypeEnum))))
</div>
在我看来,我是这样呈现这个枚举的

public enum AdTypeEnum { Sale = 1, Rent = 2, SaleOrRent = 3 };
<div class="editor-field">
   @Html.DropDownListFor(x => x.AdType, new SelectList(Enum.GetValues(typeof(MyDomain.Domain.Property.AdTypeEnum))))
</div>

现在,我尝试实现的是基于所选语言的枚举。我想在下拉列表中以所选语言显示这些枚举。

您是否尝试过类似的操作:

public static Array Localize(Array values)
{
 string[] result = new string[values.Length];
 for (int i = 0; i < values.Length; ++i)
  result[i] = Resources.ResourceManager.GetString(values.GetValue(i).ToString());

 return result;
}
更好的实现应该为每个枚举类型使用不同的键集,使用枚举名称作为GetString参数的一部分。 无论如何,这种方法非常简单,我认为对于大型应用程序或更复杂的场景,您可能需要从SelectList类继承