sqlite 从var中获取值

jq6vz3qz  于 2023-11-21  发布在  SQLite
关注(0)|答案(1)|浏览(115)

我有一段代码,我需要从数据库中获取特定列的值。

using (IDbConnection cnn = new SQLiteConnection(LoadConnectionString()))
{
    var sql = "select * from " + tablename + " where ID = " + itemid;
    var data1 = cnn.QuerySingle(sql)
}

字符串
我知道可以这样做

string s = data1.ColumnName;


但是,有没有一种方法可以让我像下面这样以编程方式设置列引用?

string test = "Column1";
string s = data1.test;

6uxekuva

6uxekuva1#

这看起来像Dapper。在这种情况下,您可以将行从this转换为IDictionary<string, object>,并使用索引器。

var map = (IDictionary<string,object>)data1;
var value = map[columnName];

字符串
注意注解是正确的,你应该参数化这个查询。但是你不能参数化表名:

var sql = "select * from " + tablename + " where ID = @itemid";
var data1 = cnn.QuerySingle(sql, new {itemid});

相关问题