asp.net mvc 入门问题

nishuangfeng 2009-11-27 01:21:05
在控制层的action中取得一个产品类别的列表,然后见列表的数据显示到页面上:
看看下面的代码错在哪里:
// get assetcategory
List<bgs_AssetCategory> assetCategory_all = bgs_assetrepository.AssetCategory_FindAll();
ViewData["assetCategory_all"] = new SelectList(assetCategory_all, "ID", "Name");
return View();
SelectList(assetCategory_all, "ID", "Name");的后两个参数是什么意思(我网上拷来的)

页面代码:

<% SelectList assetCategory_all = ViewData["assetCategory_all"] as SelectList; %>
<%= Html.DropDownList("ACName", assetCategory_all)%>
异常:There is no ViewData item with the key 'ACName' of type 'IEnumerable<SelectListItem>'
为什么??
DropDownList的参数是代表什么意义。。。
...全文
172 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dc5858518 2009-12-16
  • 打赏
  • 举报
回复
欢迎各位加入ASP.NET MVC框架超级群!让我们共同学习、进步!QQ群号:40985466

非常乐意为大家提供一个良好的交流平台!
happy664618843 2009-11-27
  • 打赏
  • 举报
回复
直接用dictionary添加string string值和文本
lyvscf 2009-11-27
  • 打赏
  • 举报
回复

<%SelectList list = ViewData["TeamList"] as SelectList;%>
<%= Html.DropDownList("TeamList",list)%>

想这样也可以 但是你要保证 TeamList 就是 前面action中viewdata["TeamList"] 一致
lyvscf 2009-11-27
  • 打赏
  • 举报
回复

<%= Html.DropDownList( "ACName ", assetCategory_all)%>

换成

<%= Html.DropDownList("assetCategory")%>


lyvscf 2009-11-27
  • 打赏
  • 举报
回复
<%= Html.DropDownList( "ACName ", assetCategory_all)%>

ACName 这是什么? 哪儿来的!?
zuoming120 2009-11-27
  • 打赏
  • 举报
回复
d
nishuangfeng 2009-11-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lyvscf 的回复:]
你是在一个页面 post 过来的吗!?
如果是的 在那个post action 中加这段代码
C# code
List<bgs_AssetCategory> assetCategory_all= bgs_assetrepository.AssetCategory_FindAll();
ViewData["assetCategory_all"]=new SelectList(assetCategory_all,"ID","Name");
[/Quote]
我已经在那个action加了上面那段代码了,而且也在显示页面里as 成SelectList,但还是报了There is no ViewData item with the key 'ACName ' of type 'IEnumerable <SelectListItem> '
这个关键字“ACName”和上面代码中的SelectList(assetCategory_all,"ID","Name")有什么必然联系,还是一定要和数据库中的表字段相同的
  • 打赏
  • 举报
回复
看看assetCategory_all是否是null或者是空的
lyvscf 2009-11-27
  • 打赏
  • 举报
回复
你是在一个页面 post 过来的吗!?
如果是的 在那个post action 中加这段代码

List <bgs_AssetCategory> assetCategory_all = bgs_assetrepository.AssetCategory_FindAll();
ViewData[ "assetCategory_all "] = new SelectList(assetCategory_all, "ID ", "Name ");

爪哇鹅 2009-11-27
  • 打赏
  • 举报
回复
DropDownList的参数前面的是Key,后面的是Value

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧