어디에서 어디서 코드를 작성하면 내 코드를 읽을 수있게됩니다. 내가 잘못 했니?
기타 성능/실제 컴파일 된 혜택에 댓글을했다, 난 단지 코드의 가독성 제안 (종교적인 성격이다, 그래서 grain of salt 그것을 가지고)입니다.
포맷 첫 번째 쿼리 :
Model= (model.Where(p => p.Date.Year == yilim)
.Where(p => p.Id== 2 || p.Id== 3)
.OrderBy(m => m.Date.Month))
.ToList();
내 취향은 이가 적용되는 클래스와 메소드를 줄 것입니다.
Model= (model.Where(p => p.Date.Where(d => d.Year == 2014)
.Where(d => d.Month == 11))
.Where(p => p.Id== 2 || p.Id== 3)
.OrderBy(m => m.Date.Month))
.ToList();
Reformattted 두 번째 쿼리 : 다차원 문처럼 보일 수 있습니다
Model= (model.Where(p => p.Date.Year == yilim
&& (p.Id== 2 || p.Id== 3))
.OrderBy(m => m.Date.Month))
.ToList();
쉽게 읽을 수 같은 경우 운영자에, 나는 인라인 모든 관찰 보고서, 모든 AND 연산에를 유지하도록 선택할 별도의 라인.
마지막으로, 나는 일반적으로 변수의 첫 문자와 일치하는 문자로 람다 식 매개 변수를 줄입니다.
그래서 :
Model= (model.Where(p => p.Date.Year == yilim)
이된다 : 더 복잡한 쿼리의
Model= (model.Where(m => m.Date.Year == yilim)
, 나는 또한 사용했습니다 : 때로는 단일 문자
query = persons.Where(person => person == ...
.Where(person => person.Friends.Where(friend =>
을 함께 연결하기 어려워진다 표현식 전체가 무엇을하고 있는지를 읽을 필요가없는 표현식.
와우 나는 많은 경험을 쌓은이 후반을 배우고 있습니다. 이 표현식에서 읽을 수있는 이름을 가진 함수를 사용하는 것은 GENIUS입니다. –
@IsThatSo 나의 풍자 경보가 울리고있다 ... Lol –
하하 그것은 영국인에게 칭찬을 지불하기 어렵다 :) –