IsFavourite
속성을 가진 항목 모음이 포함 된 listView가 있는데 Where
절에있는 각 항목에 대해이 속성을 false로 설정합니다. .목록의 특정 항목을 업데이트 할 수 없습니다
은 내가 한 것이 이것이다 : 그래서 기본적으로 내가 가진 모든 항목을
myListView.Items.Cast<Event>().Where(x => x.MatchLeague == leagueName && x.MatchNation == nationName).Select(c => { c.IsFavourite = false; return c; }).ToList();
특정 leagueName
및 nationName
, 나는 모든 항목에 대한 설정을 시도 false로 IsFavourite
속성을 반환 한 후 이런 짓을, 항목을 목록으로 반환합니다.
는 그러나 나는이 예외 얻을 : 개체의 현재 상태로 인해
조작이 유효하지 않습니다를
내가 뭘 내가 잘못하고 있어요 아무 생각이, 내가 심지어이 유형을 사용하지했습니다 과거의 코드와 잘 작동하는 코드는 어떻게됩니까? 감사. 당신이 게시물 다루고있는 당신이 당신의 웹 설정에 다음을 추가해야하는 것보다 최대 HTTP 모음 키 예외를 수신하는 경우
이것은 도움이 될 수 있습니다 : http://stackoverflow.com/a/3921084 –
이런 식으로 개체를 수정하려고하면 LINQ를 매우 추악하게 남용합니다. LINQ는 데이터 수정 언어가 아닌 * 쿼리 * 언어입니다. 간단히 *이 해킹을 사용하지 마십시오. 새 객체를 반환하거나 'foreach' 루프에서 항목을 수정하지 마십시오. –
foreach 루프가있는 @PanagiotisKanavos도이 예외가 있습니다. 그래서이 문제를 해결하기 위해 여기에 요청했습니다. – Unchained