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
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ