Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DropDownList for中未选择默认值_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# DropDownList for中未选择默认值

C# DropDownList for中未选择默认值,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,使用EF 6开发MVC 5应用程序。我正在加载dropdownlistfor,但默认选定值无法正常工作。你知道为什么吗 这是我的ViewModel的一部分 public class ToolQuestionViewModelEdit { public ToolQuestion ToolQuestion { get; set; } public SelectList ToolQuestionCategoryList { get; set; } public int Sel

使用EF 6开发MVC 5应用程序。我正在加载dropdownlistfor,但默认选定值无法正常工作。你知道为什么吗

这是我的ViewModel的一部分

public class ToolQuestionViewModelEdit
{
    public ToolQuestion ToolQuestion { get; set; }

    public SelectList ToolQuestionCategoryList { get; set; }
    public int SelectedToolQuestionCategory { get; set; }
}
这是我的控制器代码,用于填写选择列表

vm.ToolQuestionCategoryList = new SelectList(
    this.db.ToolQuestionCategories,
    "Id",
    "ToolQuestionCategory1",
    ToolQuestion.ToolQuestionCategoryId);
这是我的剃须刀代码

@Html.DropDownListFor(c => c.SelectedToolQuestionCategory,
  Model.ToolQuestionCategoryList as SelectList, 
  new { @class = "form-control" })
在即时窗口中,当我调试代码时,我看到所选值工作正常

? vm.AuditQuestionCategoryList.SelectedValue
  82
82是应选择的正确值。但是,视图始终默认为第一项。下拉列表正确显示了正确的项目,因此我知道它正确读取了viewmodel


有什么想法吗?好像我在写这篇文章。

尝试在控制器中为
SelectedToolQuestionCategory
设置一个值,然后将其传递给视图

尝试在控制器中为
SelectedToolQuestionCategory
设置一个值,然后将其传递给视图类似问题:&。您可以使用
SelectListItem.Selected
属性设置传递给
DropDownListFor
的默认值。将
工具QuestionViewModelEdit.SelectedToolQuestionCategory
设置为默认值。这就是你所需要的一切。@progrAmmar就是这样!谢谢请做一个普通的评论,这样我就可以给你答案了。谢谢!就这样。