3

我的应用程序中执行了许多 SQL 语句,如下所示:

using (SqlConnection connection = new SqlConnection(connectionString))
{
   connection.Open();

   using (SqlDataAdapter adapter = new SqlDataAdapter(statement, connection))
   {
      adapter.Fill(dtResults);
   }
}

每个语句都可以有一个AS子句,例如:SELECT id AS 'Customer ID' FROM table. 是否可以忽略AS语句的一部分,本质上将真实的列名发送到 DataTable?

4

3 回答 3

1

我总是热衷于在尽可能接近源头的地方解决问题,而不是可以说是“下游”解决问题。

在这种情况下,听起来问题在于您的 SQL 生成器没有它们需要的那么灵活。您需要更改它们,以便您可以控制它们是否AS在查询中发出别名。这可能比对“不正确”查询进行后处理更可靠——这意味着您的代码可以清楚地表达您想要实现的目标。

于 2013-02-24T17:42:02.257 回答
0

简短的回答是否定的。但是,在填充后更改 dtResults 中的列名怎么样?

你能更具体地描述你试图解决的问题吗?

于 2013-02-23T19:11:37.043 回答
0

我所做的是有一个包含列名和显示名的表,然后在 DataTable 中我使用显示名作为 ColumnName。

于 2013-02-24T15:31:41.507 回答