1

我真的不知道如何正确命名这个问题,所以请随意编辑。

User我有一个非常简单的数据库模型,它在和之间具有多对多关系UserGroup。现在它工作得很好,但我返回他所附加的组列表的方式不太漂亮。我认为有一些更好的方法可以通过 LINQ 调整或类似的东西来做到这一点。

这就是我到目前为止所拥有的,再次 - 它有效,但我认为这可以通过一个查询来实现。

public virtual List<UserGroup> UserGroups
{
    get
    {
        var _db = new MainDataContext();
        var userGroupUsers = _db.UserGroupUsers.Where(x => x.UserId == Id);
        var userGroups = new List<UserGroup>();
        userGroupUsers.ToList().ForEach(x =>
        {
            userGroups.Add(x.UserGroup);
        });

        return userGroups;
    }
}
4

1 回答 1

1

你应该使用Select

return _db.UserGroupUsers.Where(x => x.UserId == Id)
                         .Select(t => t.UserGroup)
                         .ToList();
于 2013-06-25T14:14:39.690 回答