微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ASP.NET MVC中的数据绑定在列表上不起作用

如何解决ASP.NET MVC中的数据绑定在列表上不起作用

我尝试在ASP.NET MVC中进行数据绑定。

这是我的Dto:

  public class TeamInput : FullAuditedEntityDto,IMustHaveTenant
  {
        public int TenantId { get; set; }
        public string Name { get; set; }
        public List<UserTeamMemberInput> Users { get; set; }
  }

  [AutoMap(typeof(UserTeamMember))]
  public class UserTeamMemberInput: FullAuditedEntityDto,IMustHaveTenant    
  {
        public int TenantId { get; set; }
        public int TeamId { get; set; }
        public long UserId { get; set; }
  }

这是我的控制人-我有一个表格,客户可以检查用户列表并创建团队。

public async Task<ActionResult> AddOrEditTeam(int id = 0)
{
    var users = await _userAppService.GetAllUsers();

    if (id == 0)
    {
        return View("AddOrEditTeam",new AddTeamviewmodel {
                                            AllUsers = users.ToList(),TenantId = _abpSession.GetTenantId(),Users = new List<UserTeamMemberInput>()
                                        });
    }   
    // .....
}

在视图中,我得到viewmodel并显示用户列表:

@foreach (var user in Model.AllUsers)
{
    <div class="checkBox">
        <label>
            <input type="checkBox"
                   name="SelectedUsers"
                   class="userchk"
                   value="@user.Id" />
            @user.FullName
        </label>
    </div>
}

当客户端检查每个选项时,这些行将添加到js文件中:

enter image description here

因此,当我发布表单时,用户为空:

enter image description here

很抱歉,我的解释是否有误,但我被卡住了,真的不知道该怎么办

此外,这些是实体:

 [Table("UserTeamMembers")]
    public class UserTeamMember : Entity,IMustHaveTenant
    {
        public int TenantId { get; set; }
        public long UserId { get; set; }
        public int TeamId { get; set; }
        public  User User { get; set; }
        public Team Team { get; set; }
    }



[Table("Teams")]
    public class Team : FullAuditedEntity,IMustHaveTenant
    {
        public int TenantId { get; set; }
        public string Name { get; set; }
        public List<UserTeamMember> Users { get; set; }

    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。