NoViewDataitemoftype'IEnumerable'withkey"key"部门ID{得到;放;}publicintProcedureID{得到;放;}publicintInsuranceProviderID{get;放;}publicintProcedureCategoryID{得到;得到;放;}[ForeignKey("ID")]publicvirtualDepartmentDepartment{get;放;}[ForeignKey("ID")]publicvirtualInsuranceProviderInsuranceProvider{get;放;}[ForeignKey("ID")]publicvirtualProcedureCategoryProcedureCategory{get;放;}[ForeignKey("ID")]publicvirtualProcedureSubCategoryProcedureSubCategory{get;放;}}}regulatorpublicActionResultCreate(){ViewBag.DepartmentID=newSelectList(db.Departments,"ID","Name");ViewBag.ProcedureSubCategoryID=newSelectList(db.ProcedureSubCategories,"ID","Name");返回V视图();}@Html.DropDownList("ProcedureID",null,new{@class="form-control"})@Html.ValidationMessageFor(model=>model.ProcedureID)在我看来一切正常,但它抛出错误Thereisno具有键“ProcedureID”的“IEnumerable”类型的ViewData项目。谁能指出我在这里做错了什么?错误的是,当您传递ProcedureIDintHtml.DropDownList()时,您将其放入ViewBag.ProcedureSubCategoryID并且传递SelectList参数null快速修复是将Html.DropDownList()ProcedureID替换为ProcedureID作为第一个键parameters:你有三种方法来解决这个问题。方式1:除了在接受类型SelectList的第二个参数中传递null,您可以这样做:@Html.DropDownList("ProcedureID",ViewBag.ProcedureSubCategoryIDasSelectList,new{@class="form-data"})Way2:publicActionResultCreate(){ViewBag.DepartmentID=newSelectList(db.Departments,"ID","Name");ViewBag.ProcedureSubCategoryID=newSelectList(db.ProcedureSubCategories,"ID","Name");返回视图();}@Html.DropDownList("ProcedureSubCategoryID",null,new{@class="form-control"})方式3:或者另一种方法是将它存储在您的操作中的ProcedureID中:publicActionResultCreate(){ViewBag.DepartmentID=newSelectList(db.Departments,"ID","Name");ViewBag.ProcedureID=newSelectList(db.ProcedureSubCategories,"ID","Name");返回视图();}在视图中:@Html.DropDownList("ProcedureID",null,new{@class="form-control"})我想你错过了像ViewBag.ProcedureID=newSelectList(db.ProcedureCategory,"ID","姓名”);我认为你必须初始化ViewBag.ProcedureId你在使用部分吗?如果你使用partial,很容易,你可以找到错误的解决方案这个错误说你没有视图数据类型SelectListItemkeyis'ProcedureId'我认为你使用Partial创建并在你的索引页面上调用它所以你应该像我的代码一样将这段代码传递给索引操作结果:以上是C#学习教程:没有类型是'IEnumerable的ViewData项'具有键“key”共享的所有内容。如果对大家有用,需要了解更多C#学习教程,希望大家多多关注——publicActionResultIndex(){ViewData["ProcedureID"]=newSelectList(db.Procedures,"ProcedureId","过程名称");返回视图();}publicActionResultCreate(){returnView();}本文收集自网络,不代表立场。如涉及侵权,请点击维权联系管理员删除,如有转载请注明出处:
