asp.net-mvc – 为Cascade子列表构建一个空的MVC DropdownListFor

我想建立一个空的Dropdownlistfor接收以前的Dropdownlis选择的结果:

实际看法:

<div id="makes">
        @Html.DropDownListFor(m => m.Make_Id,Model.MakeList,HeelpResources.DropdownlistMakeFirstRecord)
    </div>
    <div id="models">
        @Html.DropDownListFor(m => m.Model_Id,Model.ModelList,HeelpResources.DropdownlistModelFirstRecord)
    </div>

实际的控制器(要工作,我必须构建一个空的SelectedList,但它似乎很奇怪,必须这样做):

public virtual ActionResult Create()
    {
        // Build the Dropdownlist for the Makes
        var makesDto = _makeService.ListAllMakes();
        var makesViewModel = Mapper.Map<IList<MakeDto>,IList<MakeViewModel>>(makesDto);

        // Build the Dropdownlist for the Models
        var makeId = -1;
        var modelsDto = _modelService.ListModelByMake(makeId);
        var modelsViewModel = Mapper.Map<IList<ModelDto>,IList<ModelViewModel>>(modelsDto);

        // Build the ViewModel to return to the View
        CreateAdViewModel viewModel = new CreateAdViewModel();
        viewModel.MakeList = new SelectList(makesViewModel,"ID","Name");
        viewModel.ModelList = new SelectList(modelsViewModel,"Name"); 

        return View(viewModel);
    }

有没有办法建立这样的东西:
@ Html.DropDownListFor(m => m.Model_Id,null)

并从控制器中删除//为模型构建下拉列表?

谢谢

解决方法

找到一个我认为是最好的解决方案,因为它没有服务调用来构建dropdroplist为空,它是强类型的:
@Html.DropDownListFor(m => m.Model_Id,Enumerable.Empty<SelectListItem>(),HeelpResources.DropdownlistModelFirstRecord)

相关文章

判断URL文件是不是在于在。private static bool UrlIsExist(...
由于在.net中,Request时出现有HTML或Javascript等字符串时,...
public static bool ProcessIdCard(this string idCard, out...
protected void Page_Load(object sender, EventArgs e){ Sc...