私は次のようなクエリを実行しています:
ジョインあり
public IEnumerable<ProblemsViewModel_Base> GetProblemsSearchClassification(string searchTerm)
{
var subjectProblems =
from p in aux_problem
join sub in Subject on p.aux_ClassificationID.Id equals sub.Id
where sub.Title.Contains(searchTerm)
orderby p.CreatedOn descending
select new ProblemsViewModel_Base
{
aux_CustomID = p.aux_CustomID
,
Id = p.aux_problemId.Value
,
title = p.aux_name
,
CreatedOn = p.CreatedOn.Value
};
return subjectProblems;
}
そして結合なし
public IEnumerable<ProblemsViewModel_Base> GetProblemsSearchDetails(string searchTerm){
var detailsProblems = aux_problem
.Where(p => p.aux_CustomID.Contains(searchTerm))
.OrderByDescending(c => c.CreatedOn)
.Select(i => new ProblemsViewModel_Base
{
aux_CustomID = i.aux_CustomID
,
Id = i.aux_problemId.Value
,
title = i.aux_name
,
CreatedOn = i.CreatedOn.Value
});
return detailsProblems;}
3 つのクエリを実行した後、次のように参加して明確な結果を得ています。
var joinedResults = detailsResults.Union(requestorResults).Union(classificationResults);
var distinctResults = joinedResults.GroupBy(p => p.Id).Select(p => p.First())
私の問題は、結果で 2 番目のクエリ (結合を持たないクエリ) でユニオンを実行したときに発生します。結果が順序付けられます。
ここで問題になる可能性があるのはどれですか? ありがとう!