首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在post时将多个值绑定到模型

在post时将多个值绑定到模型
EN

Stack Overflow用户
提问于 2009-08-10 11:56:36
回答 1查看 470关注 0票数 0

我设法得到了一个核对框列表,但是当我以“通常的方式”发布时,我无法以某种方式取回这些值。在更新数据库之前,我必须使用Request.Form并将它们循环到模型中吗?

"userobj“在post时的userobj.UsersUsergroups计数=0。

控制:

代码语言:javascript
复制
        [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult UserEdit([BindAttribute(Include = "Firstname,Surname,Username,Email,Password,UserID,UsergroupID")]User userobj)
    {
        if (ModelState.IsValid)
        {
            try
            {
                us.SaveUser(userobj);
            }
            catch
            {
                ModelState.AddModelError("SomeError", "errrrrrrrrror");
            }
        }

        return View("UserDetail", new UsersAdminModel { User = userobj });
    }

并且我有如下生成的复选框:

代码语言:javascript
复制
<input id="UsergroupID_0" name="UsergroupID" type="checkbox" value="2" /> <label for="UsergroupID_0" id="label-0">Grupp 1</label><br />
<input id="UsergroupID_1" name="UsergroupID" type="checkbox" value="3" /> <label for="UsergroupID_1" id="label-1">Grupp 2</label><br />
<input id="UsergroupID_2" name="UsergroupID" type="checkbox" value="4" /> <label for="UsergroupID_2" id="label-2">234234</label><br />
<input id="UsergroupID_3" name="UsergroupID" type="checkbox" value="5" /> <label for="UsergroupID_3" id="label-3">234234</label><br />
<input id="UsergroupID_4" name="UsergroupID" type="checkbox" value="6" /> <label for="UsergroupID_4" id="label-4">234234</label><br />
<input id="UsergroupID_5" name="UsergroupID" type="checkbox" value="7" /> <label for="UsergroupID_5" id="label-5">345345345</label><br />
<input id="UsergroupID_6" name="UsergroupID" type="checkbox" value="8" /> <label for="UsergroupID_6" id="label-6">3453453456</label><br />
<input id="UsergroupID_7" name="UsergroupID" type="checkbox" value="9" /> <label for="UsergroupID_7" id="label-7">Grupp 122</label><br />

在post之后,我如何用选中的值“填充”用户对象?

预先感谢/M

编辑:

我尝试过:

AcceptVerbs(HttpVerbs.Post) ActionResult UserEdit(BindAttribute(BindAttribute= "Firstname,Surname,Username,Email,Password,UserID,UsergroupID")User userobj,IList UsergroupID)

它似乎将复选框中的值分配给该列表...

但是我应该怎么做才能将它分配给userobj.UsersUsergroups呢?当我尝试输入错误类型时

/M

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-08-10 12:01:03

请查看Phil Haack关于如何对元素列表进行建模绑定的优秀blog post

我不确定您是否能够直接使用它,但您总是可以在一个单独的参数中获取id,然后按id检索组以添加到您的user对象中。我不知道它是否会在给定ids的情况下从数据库中填充组。为此,可能需要一个自定义模型绑定器。

代码语言:javascript
复制
<input type="hidden" name="UserGroupID.Index" value="0" />
<input type="checkbox" name="UserGroupID[0]" id="UserGroupID_0" value="0" />
    <label for="UsergroupID_0" id="label-0">Group 0</label><br />
 <input type="checkbox" name="UserGroupID[1]" id="UserGroupID_1" value="1" />
    <label for="UsergroupID_1" id="label-1">Group 1</label><br />
 ...
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1254475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档