Asp.net mvc 2 强类型绑定的问题

showjancn 2010-03-16 03:57:15
其中m是页面模型,类型为User。 类User有个Dept(部门)属性。
在新增人员时,将要在RadoButtonList中先一个部门。


如下。其中temp为部门实例。

foreach (Dept temp in depts)
{
<%=Html.RadioButtonFor(m =>m.Dept, temp)%>
}

但是post之后,我的User.Dept还是为空。不知该如何实现?

谢谢!!

...全文
146 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dream_Hunter_ 2010-03-17
  • 打赏
  • 举报
回复
你不用Html方法
直接用Input type=radio试试看
都为一个name,获取form的方法里直接捕获
<form action="controllername/actionname">
<% foreach (Dept temp in depts)
} %>
<input type="radio" name="dept" value="<%= temp.Id%>" />
<%}%>
<input type="submit" value="submit" />
</form>

controller里的
public ActionResult actionname(string dept)
{
//提交后dept就能获取temp.Id的值
}

我一般ViewData里传递简单数据
表这种数据用Model来传递
showjancn 2010-03-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 liuhaibinzzz 的回复:]

你确定 你的controller里把 User 对象的值都付好了?
[/Quote]

post给Controller.

User的值是通过 如:
<%= Html.TextBoxFor(m => m.Name) %> //来对User.Name进行绑定。
liuhaibinzzz 2010-03-16
  • 打赏
  • 举报
回复
你确定 你的controller里把 User 对象的值都付好了?
li_dao_hang_1989 2010-03-16
  • 打赏
  • 举报
回复
你这样写,<%=Html.RadioButtonFor(m =>m.Dept, temp)%>
他没循环一次都有一个radio的ID,你要找哪个啊!
所以你应该有radioList集合在来找选中的那个啊!
showjancn 2010-03-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 li_dao_hang_1989 的回复:]
你先显示出来看看里面有值吗?depts

<%=Html.RadioButtonFor(m =>m.Dept, temp)%>
你是获得选中的值啊!你怎么写的啊……
[/Quote]

depts有值,我在界面上也显示出来了。

<%=Html.RadioButtonFor(m =>m.Dept, temp)%>
<%=Html.Encode(temp.Name)%> //显示正确



“你是获得选中的值啊!你怎么写的啊……” 不会!!这也是本帖的目的。
li_dao_hang_1989 2010-03-16
  • 打赏
  • 举报
回复
你先显示出来看看里面有值吗?depts

<%=Html.RadioButtonFor(m =>m.Dept, temp)%>
你是获得选中的值啊!你怎么写的啊……
showjancn 2010-03-16
  • 打赏
  • 举报
回复
depts是通过“ViewData”传进来的。
其实就是要求新增人员的时候必须指定一个部门(只能一个,所以用radio)。
Dream_Hunter_ 2010-03-16
  • 打赏
  • 举报
回复
depts是怎么来的?
显示RadionButton没错吗?

62,041

社区成员

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

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

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

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