相关疑难解决方法(0)

如何从ASP.NET MVC中的枚举创建下拉列表?

我正在尝试使用Html.DropDownList扩展方法,但无法弄清楚如何将它与枚举一起使用.

假设我有一个这样的枚举:

public enum ItemTypes
{
    Movie = 1,
    Game = 2,
    Book = 3
}
Run Code Online (Sandbox Code Playgroud)

如何使用Html.DropDownList扩展方法创建包含这些值的下拉列表?

或者我最好的办法是简单地创建一个for循环并手动创建Html元素?

c# asp.net asp.net-mvc

653
推荐指数
21
解决办法
34万
查看次数

如何为枚举制作默认的编辑器模板?

如何为枚举创建默认编辑器模板?我的意思是:我可以做这样的事情:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Enum>" %> 
<% -- any code to read the enum and write a dropdown -->
Run Code Online (Sandbox Code Playgroud)

并将其放在EditorTemplates文件夹下的名称下Enum.ascx

这是我尝试过的问题的解决方法,但这不是我需要的.

这是我的枚举:

public enum GenderEnum
{
    /// <summary>
    /// Male
    /// </summary>
    [Description("Male Person")]
    Male,

    /// <summary>
    /// Female
    /// </summary>
    [Description("Female Person")]
    Female
}
Run Code Online (Sandbox Code Playgroud)

我制作了一个名为的模板GenderEnum.acsx并将其放入Shared/EditorTemplates文件夹中.这是模板:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<AlefTech.HumanResource.Core.GenderEnum>" %>
<%@ Import Namespace="AlefTech.HumanResource.WebModule.Classes" %>
<%=Html.DropDownListFor(m => m.GetType().Name, Model.GetType()) %>
Run Code Online (Sandbox Code Playgroud)

当然这个方法是我自己的:

public static class HtmlHelperExtension
    {
        public static MvcHtmlString DropDownListFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc enums mvc-editor-templates

20
推荐指数
4
解决办法
8481
查看次数

如何在C#中为枚举值添加描述以与ASP.NET MVC中的下拉列表一起使用?

如果我想在我的ASP.NET MVC视图中使用我的枚举下拉列表,以便我可以将枚举值或枚举名称作为选择列表项值,并将更具描述性的文本作为选择列表项文本,我将如何去做?

c# extension-methods enums asp.net-mvc-4

1
推荐指数
1
解决办法
6149
查看次数