linq to sql c#:将外键替换为其字符串值并保留表结构

| 我想知道是否有可能这样做。问题是我试图查询数据库以填充一些列表。如果我要使用此查询:
var query =
     a in db.Record_HoldData
     where a.HoldStatus == \"Open\"
     select a;
它将返回所有相关数据,我仍然可以从结果对象访问和转换数据,例如:
DateTime time = (DateTime)query.DateOpened;
但是Flavor字段是一个外键号,因此在这种情况下它是无用的。我要做的是返回一个完整的表,将风味的外键替换为风味查找表中的实际名称,并且仍然能够使用该数据。那有意义吗?我认为很简单。     
已邀请:
您需要像这样联接两个表:
var query = (
    from a in db.Record_HoldData
    join b in db.FlavorTable on
        a.FlavorId equals b.Id
    where a.HoldStatus == \"Open\"
    select
        new
        {
            a.DateOpened,
            a.Field1,
            a.Field2,
            ...
            b.FlavorName
        })
    .ToList();
另外,添加ToList()。否则,您每次访问查询都将最终查询数据库,而不是一次加载数据并重新使用它。     

要回复问题请先登录注册