【发布时间】:2022-12-01 04:13:16
【问题描述】:
请找到下面的数据库数据 我已经编写了一个连接查询来连接两个表,然后根据 PhotoContestID 选择数据,但我想要唯一值 下面是连接查询及其结果
select *
from PhotoContest.ContestImageLibrary
Left Join
PhotoContest.ContestCategories On
PhotoContest.ContestImageLibrary.PhotoContestID = PhotoContest.ContestCategories.PhotoContestID;
正如您从数据中看到的那样,我想根据 ImageID FirstorDefault 获取唯一值。 我不想要重复的记录,例如 ImageID
我已经编写了以下代码来获取详细信息,但我得到了重复的代码。我试过在最后使用 Distinct 但没有用。
var voteList = (from i in context.ImageLibrary
join p in context.ContestCategories on i.PhotoContestID equals p.PhotoContestID
select new VoteLists()
{
PhotoContestID = i.PhotoContestID,
ImageID = i.ImageID,
ImageCaption = i.ImageCaption,
ImageName = i.ImageName,
categoryName = p.categoryName,
isImageAccepted = i.isImageAccepted,
catID = p.Id,
empID = i.empID,
votingType = p.votingType
}).Where(x => x.PhotoContestID == id).ToList();
foreach (var image in voteList)
{
var f = Url.Content(System.IO.Path.Combine("~/Photos", image.ImageName));
image.imageUrl = f;
}
我应该在我的后端准确地写什么来获得所需的唯一结果,或者我可能无法获得基于 ImageID 的唯一值。
谢谢
【问题讨论】:
-
那么所有其他字段呢(它们并不是真正重复的,只是 imageID 本身)。你用那些做什么?
标签: c# .net sql-server asp.net-mvc linq