문제

다음과 같은 간단한 진술이 주어지면:

<statement id="SelectProducts" resultMap="???">
  SELECT * FROM Products
</statement>

키가 열 이름인 사전 개체 목록을 얻을 수 있습니까?즉.

var list = Mapper.QueryForList<IDictionary<string,string>>("SelectProducts", null);

IDictionary<string, string> dict = list[0];
// dict["id"] == "1"
// dict["name"] == "Some Product Name"
// dict["price"] == "$9.99"
// etc.

일부 클래스의 특정 속성에 매핑하지 않고 여러 열/열 이름을 처리하기 위해 쿼리 결과를 일반화하고 싶습니다.

결과 집합에 중복(또는 null) 열 이름이 있을 수 있으므로 여기 예제는 실패할 것입니다.저는 키-값 쌍의 색인화된 목록을 보유하는 결과 클래스에 대해 생각해 보았습니다.여기서 중요한 것은 열 정보를 어딘가에 유지하는 것입니다.

도움이 되었습니까?

해결책

resultMap 구성에서 클래스 속성을 HashTable로 설정하여 이를 수행할 수 있습니다.자세한 내용 확인 가능 여기.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top