1
開始日と終了日が異なるユーザーのジョブリストがあります。日付の範囲に基づく開始日/終了日のオブジェクトに一致
ユーザには、開始日と終了日を持つプロジェクトがあります。
私はプロジェクトがレンジ日
例として一致するものを仕事で知りたい:
ジョブズ:
1. [ 1.2.1999 ] - [ 3.4.2000 ]
2. [ 4.4.2000 ] - [ 1.1.2004 ]
3. [ 2.1.2004 ] - [ 6.8.2004 ]
4. [ 7.8.2004 ] - [ 9.10.2005 ]
5. [ 10.10.2010 ] - [ 12.12.2010 ]
6. [ 1.1.2014 ] - [ 1.1.2016 ]
7 [ 2.1.2016 ] - [ 10.10.2016 ]
プロジェクト:
[ 10.10.2004 ] - [ 10.10.2014 ]
結果:
ジョブズ:4,5,6
コード:
Job {
public DateTime StartDate{ get;set;}
public DateTime EndDate {get;set;}
}
var jobs = new List<Job>();
// Will not work
jobs
.Where(e => e.StartDate <= project.StartDate &&
e.EndDate >= project.EndDate)
.ToList();
Do yoあなたは単に 'プロジェクト'の範囲内にある*すべての '仕事 'を望んでいるのですか、'プロジェクトの範囲内に部分的に*ある '仕事をしたいですか?例えば、 'jobA'は' 2000年 'から' 2005年 '、' jobB'は '2004年'から '2006年'、 'プロジェクト'は2003年から '2007年'になります。 'jobB'だけ、あるいは' jobA' *と 'jobB'の両方を使いたいですか? – Corak
あなたのロジックでは、 'プロジェクト'よりも「仕事」が大きい 'ジョブ'しか得られません。つまり、 '仕事'は 'プロジェクト'の前に ' 「プロジェクト」の後に(またはそれに等しい)。 – Corak
@Corakは部分的で完全です。プロジェクトの開始/終了:[10.10.2004] - [10.10.2014]では、[7.8.2004] - [9.10.2005]、[10.10.2010] - [12.12.2010]、[1.1.2014] ] - [1.1.2016] –