>백엔드 개발 >C++ >XML 구성에서 동적 LINQ 쿼리를 작성할 수 있습니까?

XML 구성에서 동적 LINQ 쿼리를 작성할 수 있습니까?

DDD
DDD원래의
2024-12-28 19:01:091001검색

Can Dynamic LINQ Queries Be Built from XML Configuration?

XML 구성의 동적 LINQ 쿼리

질문:

소스 코드를 변경하지 않고 LINQ 쿼리를 동적으로 구성할 수 있습니까? 이 시나리오에서는 쿼리 매개변수가 데이터베이스에 저장된 XML 구성에서 추출됩니다.

예:

var result = from i in someObj
             where name = 'Bob'

동적 쿼리 세대:

답변:

식 트리는 이러한 동적 쿼리 생성을 위한 솔루션을 제공합니다. 코드 예는 다음과 같습니다.

var param = Expression.Parameter(typeof(SomeObject), "p");
var exp = Expression.Lambda<Func<SomeObject, bool>>(
    Expression.Equal(
        Expression.Property(param, "Name"),
        Expression.Constant("Bob")
    ),
    param
);
var query = someObj.Where(exp);

설명:

  • param은 SomeObject 유형의 매개 변수를 정의합니다.
  • Expression.Lambda는 LINQ 쿼리를 나타내는 람다 식입니다.
  • Expression.Equal SomeObject의 Name 속성을 상수 Bob과 비교합니다.
  • 마지막으로 someObj.Where(exp)는 표현식을 someObj 컬렉션에 적용하여 동적 LINQ 쿼리를 생성합니다.

참고: 이 접근 방식은 더 복잡하지만 XML 구성에서 동적 쿼리 구성이 필수적인 상황에 유연성을 제공합니다.

위 내용은 XML 구성에서 동적 LINQ 쿼리를 작성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.