Dynamic LINQ는 오픈소스 라이브러리로 쿼리 시 문자열로 질의를 할 수 있게 해줍니다. 이에 따라 다음의 장점이 생기는데요,
- 간단한 표현식으로 가능합니다.
- 일일이 타입 안전 속성으로 질의하는 것보다 어떨 때는 바로 질의하는 것이 편리합니다.
- 최종 사용자 UI를 제공하는 시나리오에서 특히 유용합니다.
(물론 편리한 이름 자동완성이라든가 오타를 미연에 막는 장점은 없어집니다.)
var result = context.Customers
.Where(c => c.City == "Paris")
.ToList();
대신
var resultDynamic = context.Customers
.Where(@"City == ""Paris""")
.ToList();