EF5:如何使用原始SQL选择带有子实体的实体

时间:2014-03-11 07:55:35

标签: c# sql .net sql-server entity-framework-5

对于我开发的应用程序的purpouse,我需要选择具有导航属性的实体到具有本机sql查询的其他实体。

这是我的实体类:

public class UserModel
{
    public int UserId { get; set; }
    public string UserName { get; set; }
    public string Email { get; set; }
    public string Password { get; set; }
    public int? CodeId { get; set; }
    public CodeModel Code { get; set; }
}

public class CodeModel
{
    public int CodeId { get; set; }
    public int Code { get; set; }
    public int UserId { get; set; }
}

我的SQL查询是:

 string sql = "SELECT u.* FROM UserModel AS u" +
              "INNER JOIN CodeModel AS c" +
              "ON c.UserId = u.UserId";

我的C#方法是:

public IEnumerable<UserModel> GetUsers()
{
    var users = dbContext.UserModel.SqlQuery(sql);

    return users;   
}

结果我得到了用户,但UserModel类上的Code的导航属性为null。如何使用本机查询执行此任务?我知道如何使用LINQ。

0 个答案:

没有答案