2017-01-14 15 views
0

我只想知道如何在我的项目中设置默认类别。如何在列表中设置默认类别ASP MVC

这里是控制器:

public ActionResult Create() 
    { 
     var ii = User.Identity.GetUserId(); 

     ViewBag.User_ID = ii; 
     ViewBag.Category_id = new SelectList(db.Categories, "Category_id", "Category_name"); 
     return View(); 
    } 

查看:

<div class="form-group"> 
        <h4>@Html.LabelFor(model => model.Category_id, htmlAttributes: new { @class = "control-label col-md-3" })</h4> 
        <div class="col-md-6"> 
         @Html.DropDownList("Category_id", null, htmlAttributes: new { @class = "form-control" }) 
         @Html.ValidationMessageFor(model => model.Category_id, "", new { @class = "text-danger" }) 
        </div> 
       </div> 

如何使一个特定的类别标识或名称列表中的默认类别。谢谢

+0

你会发现这个答案有用http://stackoverflow.com/a/782030/28004 – balexandre

回答

0

看起来您的视图被强制输入到具有Category_id属性的视图模型。你可以做的是,创造了GET操作您的视图模型的对象,Category_id属性的值设置为你想要的类别编号,并在您的视图

所以在您的GET操作使用DropDownListFor帮手,

ViewBag.Categories = new SelectList(db.Categories, "Category_id", "Category_name");  
var vm = new YourViewModel(); 
vm.CategoryId=3;   
return View(vm); 

现在,在您看来,这是强类型到您的视图模型

@model YourViewModel 
@Html.DropDownListFor(x=>x.Category_id, ViewBag.Categories as SelectList, 
                 new { @class = "form-control" }) 
+0

由于它的工作好。做得好 –

相关问题