我有一個連接2個表,並返回此結果的查詢:如何合併SQL結果聯接表到一個合適的對象
這是由於左加入,我在做我的查詢。 Progmatically,把它變成一個對象我做到以下幾點:
clsJobPosting JobPosting = new clsJobPosting();
DataSet dsJobs = JobPosting.SelectForAllJobs(clsSession.UserID, startRowIndex, pageSize, orderBy, orderByDirection, categoryId);
DataTable dtJobs = dsJobs.Tables[0];
List<JobItem> jobPostings = new List<JobItem>();
DataRow[] arrFileInfo;
FileCountItem FileInfoItem;
foreach (DataRow drJob in dtJobs.Rows)
{
JobItem jobPost = new JobItem(drJob, CallingPageName.AllQuestions);
jobPost.TotalRecords = totalRecords;
jobPost.FileItems = new List<FileCountItem>();
if (jobPostings.Any(x => x.JobId == jobPost.JobId))
{
JobItem jobItem = jobPostings.Single(s=>s.JobId == jobPost.JobId);
jobItem.Tags.Add(jobPost.CategoryName);
jobPost.Tags = jobItem.Tags;
jobPostings.Remove(jobItem);
jobPostings.Add(jobPost);
}else{
arrFileInfo = dtFileInfo.Select("JobId = " + jobPost.JobId);
for (int j = 0; j < arrFileInfo.Length; j++)
{
FileInfoItem = new FileCountItem(arrFileInfo[j]);
jobPost.FileItems.Add(FileInfoItem);
}
string CategoryName = jobPost.CategoryName;
jobPost.Tags.Add(CategoryName);
jobPostings.Add(jobPost);
}
}
我基本上把該數據轉換成有一個名爲Tags
屬性的對象,這是一個List<string>
哪裏存儲不同CategoreyNames。實質上,我將這些數據合併到一個列表中具有不同CategoryNames的對象中。有沒有更好的方法來合併這些數據?我覺得這樣做太廣泛而無法合併數據。我不知道如何GROUP BY
也可以在查詢中工作。