简体   繁体   English

从列表ASP.NET MVC创建下拉列表

[英]Create drop down list from List ASP.NET MVC

I have strongly typed view model and in one of class object I am passing list of options that I need to present in @html.Dropdownlist 我使用了强类型的视图模型,并且在一个类对象中,我传递了需要在@ html.Dropdownlist中显示的选项列表

View Model 查看模型

 public class CreateCampaign_VM
{
    public MarketingCampaign MarketingCampaign { get; set; }

    public List<MarketingCampaignType> MarketingCampaignType { get; set; }
}

Controller method 控制器方式

 private CreateCampaign_VM GetCampaignObject()
    {
        CreateCampaign_VM _CampaignObject = new CreateCampaign_VM();


        _CampaignObject.MarketingCampaignType.Add(new MarketingCampaignType {
            CampaignTypeID = 1,
            CampaignTypeTitle = "Email",
            Description = "Email"
        });

        _CampaignObject.MarketingCampaignType.Add(new MarketingCampaignType
        {
            CampaignTypeID = 2,
            CampaignTypeTitle = "Text",
            Description = "Text"
        });

        _CampaignObject.MarketingCampaignType.Add(new MarketingCampaignType
        {
            CampaignTypeID = 3,
            CampaignTypeTitle = "Post",
            Description = "Post"
        });

        return _CampaignObject;
    }

... ...

 public ActionResult CreateCampaign_Title()
    {
        return PartialView("CreateCampaign_Title_Partial", GetCampaignObject());
    }

Razor view 剃刀视图

@model App.Business.Entities.CreateCampaign_VM
  @using (Html.BeginForm("CreateCampaign_Title", "Campaign", FormMethod.Post, new { id = "CreateCampaignTitleForm" }))
        {
         .....
          @Html.DropDownListFor(// 'MarketingCampaignType object' need help here 
         //...
       }

尝试这个:

@Html.DropDownListFor(m => m.MarketingCampaign , new SelectList(Model.MarketingCampaignType, "CampaignTypeTitle", "CampaignTypeId"), new { id = "yourElementIdIfAny", @class = "yourClassNameIfAny" })

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM