【问题标题】:ado.net Linq query with join tableado.net Linq 查询与连接表
【发布时间】:2012-08-02 02:39:12
【问题描述】:

这是我的 edmx 图。

我正在尝试使用

UserEntity.users.ToList<user>();

这为我提供了一个包含user_groups 的复杂对象Users,但我似乎找不到Group 信息。我的理解是 EF 应该抽象出连接表并为我提供对Group 信息的直接访问。请注意,我来自 cakephp,希望得到类似的风格结果!

编辑:型号代码

 public static class UserModel
    {
        static UserEntities dataContext = new UserEntities();

        public static void CreateUser(user _newUser)
        {
            dataContext.users.AddObject(_newUser);
            dataContext.SaveChanges();
        }

        public static List<user> GetAllUsers()
        {
            return dataContext.users.ToList<user>();
        }
    }

【问题讨论】:

  • @Julien...请分享您的型号代码。您需要在对象的 .cs 文件中正确定义属性和链接。我不清楚你到底想要什么。您想查看 group 和 user_groups 吗?
  • Habib 的回答乍一看似乎是我所需要的。非常感谢。

标签: c# entity-framework-4 ado.net


【解决方案1】:

usersuser_group 之间存在一对多关系,因此您可以从users 中选择一个user_group,然后您将获得组。

var result = users.user_group.FirstOrDefault().group;

users 中的导航属性user_group 将包含user_group 对象的集合,您可以根据需要选择First 或任何内容,然后从那里选择group

【讨论】:

  • 我无法像这样从user_group 访问group
  • @Julien,我错过了用户与 user_groups 之间的一对多关系,现在检查编辑的答案
猜你喜欢
  • 2015-01-23
  • 2013-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-17
  • 2019-03-27
  • 1970-01-01
相关资源
最近更新 更多