dat*_*est 7 c# linq linq-to-sql
试图获取音乐会的名称,日期和地点(存储在另一张桌子上),但它似乎没有工作,但它不断拉回null.
var test = from f in db.Concert
where f.Name.StartsWith(concertName)
select new
{
f.Name,
f.StartDateTime,
venues = from v in db.Venues
where v.ID == f.VenueID
select v.Address
}
Run Code Online (Sandbox Code Playgroud)
编辑:
Venue和Concert之间的关系是Concert有一个与Venue ID相关的VenueID.我需要传回一个字符串.就像是
foreach (var e in test)
{
html += "<div> e.Name +":" + e.Address </div>;
}
Run Code Online (Sandbox Code Playgroud)
Ser*_*kiy 13
您可以使用群组加入来获取与Concert相关的所有场地
var test = from f in db.Concert
join v in db.Venues on f.VenueID equals v.ID into g
where f.Name.StartsWith(concertName)
select new
{
f.Name,
f.StartDateTime,
Venues = g.Select(x => x.Address)
};
Run Code Online (Sandbox Code Playgroud)
使用结果:
foreach (var e in test)
{
// e.Name
// e.StartDateTime
foreach(var address in e.Venues)
// address
}
Run Code Online (Sandbox Code Playgroud)