我是Dapper的新手。让我解释我想达到的目标。我有简单的查询是从DB返回列,我不想创建实体(Property)类来填充数据。我想为此使用动态类型。以下是我的代码:如何处理Dapper返回键值对来自LINQ的动态
public dynamic GetABC(int year)
{
using (var db = new MySql.Data.MySqlClient.MySqlConnection(ClsConnectionString.connectionString))
{
string query = string.Format(@"SELECT * FROM ranking where YEAR(eventdate)='{0}') ORDER BY eventdate DESC, eventid ASC",year);
//return db.Query<RankingEntity>(query, commandType: System.Data.CommandType.Text).AsList();
var a = (IEnumerable<dynamic>)db.Query(query, null, null, true, null, CommandType.Text).ToList();
return a;
}
}
有什么办法,我只写了一个通用的方法来获取列表作为“财产” =“值”作为通常我们得到当我们用任何实体类。
我不确定,如果它是可以实现的,但我希望了解它是否可行并希望在我们的应用程序中实现。
我可以通过实现循环通过我不想要的dapperrows来实现这一点。因为如果会有10000行循环会迭代10000次。
在此先感谢。
DapperRow是一个内部类的小巧玲珑的,可以直接固定 - 铸造成'的IDictionary <字符串,对象>'其中有一个关键字符串和值对象 –
@MrinalKamboj,请你更新上面的代码来获得这个。理解 –