连接表并从中获取数据

时间:2014-03-03 21:46:51

标签: asp.net sql asp.net-mvc

我一直在尝试从我加入主用户表的表中获取数据,第二个表是保存图像。我在下面发布的当前代码仅在我想要检索ImagePath字段时从表中返回ImageID,只是要注意这是一个单独的表,因为用户可以添加许多图像。

这些是模型:

[Table("accountInfo")] // Table name
public class accountInfo
{
    [Key]
    public int AccountID { get; set; }
    public int UserId { get; set; }
    public int UserIdent { get; set; }
    public string LastName { get; set; }
    public string FirstName { get; set; }    
    public virtual ICollection<UserImages > UserImages { get; set; }
}

[Table("UserImages")] // Table name
public class UserImages 
{
    [Key]
    public int ImageID { get; set; }
    public int AccountID { get; set; }
    public string ImagePath { get; set; }
    public string ImageDesc { get; set; }
    public int ProfileImage { get; set; }
}

控制器:

public ActionResult Index()
{
    int id = (int)WebSecurity.CurrentUserId; 
    var users = db.AccountInformation.Include(c => c.UserImages).Where(c => c.UserId == id);

    return View(users.ToList());                 
}

我假设我在设置的模型中出错了。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

var a = db.AccountInformation.Include(c => c.UserImages.Select(x => x.AccountId)).Where(c => c.UserId == id);