c#数据读取器在绑定之前更改字段名称

时间:2012-12-18 14:33:37

标签: c# sqldatareader bindingsource

我有SqlDataReader填写ExecuteDataReader声明。 我想在填充后更改DataReader中的一些列名。

例如在填充datareader之后我有两列(A,B) 我想将colum 'A'更改为'a'(转换为小写)befor binde to grid

sqlDataReader reader;
reader.executedatareadet();

reader.GetName(i) 我想成为像

这样的东西
reader.SetName(i)

但它接缝我们无法更改datareader列名称

3 个答案:

答案 0 :(得分:2)

DataReader仅用于读取返回的数据。您阅读了这些值,并将它们放在您自己的数据结构或变量中。

更改数据读取器结构的唯一方法是在数据源上,即格式化返回数据的SQL查询。

答案 1 :(得分:0)

然后,您需要将数据存储在自己的变量中。运行executeReader()并将结果放在var dataHolder中。 然后用

循环遍历dataHolder
   foreach(var x in dataHolder)
   {
        x.Property = x.Property.ToLower(); //Or something like this
   }

然后,当您完成后,您可以将dataHolder放入网格或其他内容

答案 2 :(得分:0)

在读取和绑定之间引入中间模型层。从数据读取器读取数据后,将数据加载到中间模型中,然后更改数据,然后将模型集合绑定到数据源。