Tag: dbdatareader

如何轻松地将DbDataReader对象转换为有用的东西?

我使用Entity Framework EntityConnection手动调用存储过程,如下所示: DbConnection storeConnection = entityConnection.StoreConnection; DbCommand command = storeConnection.CreateCommand(); command.CommandText = “sp_GetMyComplexData”; command.CommandType = CommandType.StoredProcedure; DbDataReader reader = command.ExecuteReader(); 这样做的原因是entity framework不容易支持不直接映射到表或视图的实体。 我发现这篇文章( http://dotnet.dzone.com/news/mapping-stored-procedure ),但它需要编辑XML,我想避免。 在我的情况下,我只是运行一个使用LEFT JOIN连接两个表的查询。 之所以这样,是因为我试图将结果绑定到Telerik RadGrid,它不支持分层数据导出,但似乎支持分组数据导出。 问题是,如何将DbDataReader对象转换为可以绑定到RadGrid的有用的东西? 我一直在DAL方法中传递单个对象或IQueryable对象。 有任何想法吗? 提前致谢? 编辑: 我只需要数据。 之后我不需要进行任何插入,更新和删除操作。 它是一个只读视图。

通用DbDataReader到List 映射

我的属性绑定数据访问类有一个小问题(更像是烦恼)。 问题是当读取器中没有列中的相应属性时映射失败。 码 这是mapper类: // Map our datareader object to a strongly typed list private static IList Map(DbDataReader dr) where T : new() { try { // initialize our returnable list List list = new List(); // fire up the lamda mapping var converter = new Converter(); while (dr.Read()) { // read in each row, […]