我有一张桌子,在一些不同的图片上有一些id。有了那些id,我想得到与另一张桌子匹配的图片ID。但我似乎无法让这个工作。
Heres是我到目前为止所得到的:
.master
我最终需要的是能够将所有图像返回到列表中,因此我可以将其用作转发器的数据源。
这是我找到会话中所有图像的方法
public List<Image> ImagesForSession()
{
var userID = User.Identity.GetUserId();
var newestSes = newSes.GetNewestSession(userID);
var imgsOnSes = mtm.GetImagesOnSession(newestSes).Select(i => i.ImgId);
var imgs = imgSes.GetImageOnId(imgsOnSes).Select(x => x);
return imgs.ToList();
}
最后,这是我在id上获取图像的方法:
public List<MtoMImg> GetImagesOnSession(int sesID)
{
var query = _db.MtoMImgs.Where(i => i.SessionId == sesID).Select(i => i);
return query.ToList();
}
答案 0 :(得分:1)
这是一个将它们组合在一起的声明。您需要更新on
子句以匹配表的相关方式。如果您正在进行EntityFramework,这将变得更加简单。因为您可以直接选择图像。
public List<Image> GetImageOnId(int sessionID)
{
return (
from sessionImage in _db.MtoMImgs
join image in _db.Images on sessionImage.ImageId equals image.Id
where sessionImage.SessionId == sessionID
select image
).ToList();
}
选项2是你得到的图像。需要了解更多数据模型的工作原理,还需要使用EF。
return _db.Images.Where(x=>x.SessionId== sessionID).ToList();