Dapper를 사용하여 동적으로 열의 가치를 얻는 방법

dapper

문제

Dapper를 사용하면 어떻게 테이블 내의 컬럼 값을 동적으로 얻을 수 있습니까?

내가 가진 것 :

string tableName = "Table1";
int itemId = 1;
string columName = "MyBitColumn";

var query = string.Format("select {0} from {1} where {1}Id = @itemId", columnName, tableName);
var entity = conn.Query(query, new { itemId }).FirstOrDefault();

// I'd like something like this...
bool val = entity[columnName] as bool; // returns true or false, given that "MyBitColumn" is a bit in my sql db

감사!

수락 된 답변

엔티티를 IDictionary<string, object> 캐스팅하고 이름으로 액세스 할 수 있습니다.

var entity = (IDictionary<string, object>) ... // your code
if((bool)entity[column name]) { ... }


아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow