C# 如何在MVC3.0中绑定dropdownlist
我是mvc新手,我想在mvc 3.0中绑定dropdownlist。我的代码如下 桌子C# 如何在MVC3.0中绑定dropdownlist,c#,asp.net,linq,C#,Asp.net,Linq,我是mvc新手,我想在mvc 3.0中绑定dropdownlist。我的代码如下 桌子 tbl_Modules ------------------ Module_Id ModuleName ModuleDescription tbl_DocumentTypes ------------------- Document_Id DocumentName DocumentDescription Module_Id 我想创建一个表单来添加文档类型,并在表单中创建一个dropdownlist,
tbl_Modules
------------------
Module_Id
ModuleName
ModuleDescription
tbl_DocumentTypes
-------------------
Document_Id
DocumentName
DocumentDescription
Module_Id
我想创建一个表单来添加文档类型,并在表单中创建一个dropdownlist,其中Module\u Id
作为值,ModuleName
作为文本
public class DocumetRepository
{
InwardManagementEntities db = new InwardManagementEntities();
public IQueryable<tbl_DocumentTypes> FindAllDocumentTypes()
{
return db.tbl_DocumentTypes;
}
}
public class DocumentTypeViewModel
{
ModuleRepository _modulerepository = new ModuleRepository();
public tbl_DocumentTypes Document { get; private set; }
public SelectList Modules { get; private set; }
public DocumentTypeViewModel(tbl_DocumentTypes document)
{
Document = document;
//var _modules = _modulerepository.FindAllModules().Select(d => new {Module_Id= SqlFunctions.StringConvert((double?)d.Module_Id), Text = d.ModuleName });
var _modules = _modulerepository.FindAllModules().Select(d => new SelectListItem() {Value= SqlFunctions.StringConvert((double?)d.Module_Id), Text = d.ModuleName });
Modules = new SelectList(_modules, Document.Module_Id);
}
}
查看:
public ActionResult AddDocument()
{
tbl_DocumentTypes _document = new tbl_DocumentTypes();
return View(new DocumentTypeViewModel(_document));
}
<div class="editor-label">Module</div>
<div class="editor-field">
@Html.DropDownList("Document.Module_Id", Model.Modules.ToList())
@Html.ValidationMessageFor(model => model.Document.Module_Id)
</div>
模块
@DropDownList(“Document.Module_Id”,Model.Modules.ToList())
@Html.ValidationMessageFor(model=>model.Document.Module\u Id)
但在dropdownlist中,我得到了
System.Web.Mvc.SelectListItem
。请提供帮助。将文档类型视图模型的模块
属性更改为IEnumerable
公共类DocumentTypeViewModel
{
ModuleRepository _ModuleRepository=新的ModuleRepository();
公共tbl_DocumentTypes文档{get;private set;}
公共IEnumerable模块{get;private set;}
公共文档类型视图模型(待定文档类型文档)
{
文件=文件;
//var\u modules=\u modulerepository.FindAllModules().Select(d=>new{Module\u Id=SqlFunctions.StringConvert((double?)d.Module\u Id),Text=d.ModuleName});
Modules=_modulerepository.FindAllModules()
.选择(d=>new SelectListItem
{
Value=SqlFunctions.StringConvert((双精度?)d.Module_Id),
Text=d.ModuleName
});
}
}
在你看来:
<div class="editor-label">Module</div>
<div class="editor-field">
@Html.DropDownList("Document.Module_Id", Model.Modules)
@Html.ValidationMessageFor(model => model.Document.Module_Id)
</div>
模块
@DropDownList(“Document.Module_Id”,Model.Modules)
@Html.ValidationMessageFor(model=>model.Document.Module\u Id)
<div class="editor-label">Module</div>
<div class="editor-field">
@Html.DropDownList("Document.Module_Id", Model.Modules)
@Html.ValidationMessageFor(model => model.Document.Module_Id)
</div>