막판에 제출 된 항목을 쿼리하는 람다 함수를 원합니다. 이것을 지정하는 방법?람다 식 TimeSpan
var items= Items.Where(i=>DateTime.Now.Subtract(i.Date)...)
막판에 제출 된 항목을 쿼리하는 람다 함수를 원합니다. 이것을 지정하는 방법?람다 식 TimeSpan
var items= Items.Where(i=>DateTime.Now.Subtract(i.Date)...)
항목 각각 날짜 속성이있는 경우, 당신은 할 수 :
DateTime startDate = DateTime.Now - new TimeSpan(0,1,0);
var items = Items.Where(i => i.Date >= startDate);
당신은 수학을 둘 수 있었다 Where 문으로 직접 변환하지만 recom을 얻을 수 있습니다. 각 항목에 뿌리를 박 았기 때문에 시작 시간을 유지하는 것을 선호합니다.
선택지가 가지고
var items= Items.Where(i => DateTime.Now.Subtract(i.Date).TotalMinutes < 1)
또는
var items= Items.Where(i => DateTime.Now.Subtract(i.Date).TotalSeconds <= 60)
I 두 번째 것과 같습니다. => 및 <=를 사용하여 대칭으로 나타납니다. –
방법에 대해 : 당신의 목록은 변수에 DateTime.Now을 절약 할 수 있습니다 포함, 그래서 모든 비교를 통해 동일합니다 얼마나 많은 항목에 따라
DateTime cutoffPoint = DateTime.Now.AddMinutes(-1);
var items = Items.Where(i => (i.Date >= cutoffPoint));
아마도 'DateTime.Now.AddMinutes (-1);'을 의미했을 것입니다. –
네, 물론 고쳐 주셔서 고마워요. –
var items = Items.Where(i => DateTime.Now.Subtract(i.Date).TotalSeconds <= 60);
..
나는 항상 .Seconds가 아닌'.TotalSeconds'를 의미한다고 생각한다 - 항상 <60이 될 것이다. – configurator
네, 제가 (업데이트했습니다) - 고마워요! – andyp
thats 내가 만든 실수 – zsharp
설명 된 이유로 이것을 사용했습니다. – zsharp