3

我一直在尝试让 SqlAdapter 从 SqlCommand 获取信息,该 SqlCommand 使用存储过程从 SQL 服务器获取信息。我知道 SQL 存储过程有效并且 SqlCommand 有效(因为我在没有 SqlAdapter 的情况下单独测试了它们)。这是代码:

    try
    {
         SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd);
         SqlCommandBuilder command = new SqlCommandBuilder(dataAdapter);
         DataTable table = new DataTable();
         table.Locale = System.Globalization.CultureInfo.InvariantCulture;
         dataAdapter.Fill(table);
         grid.DataSource = table;
    }catch(Exception er){}

这段代码没有遇到任何异常,SqlCommand 似乎连接到 Sql Server 就好了。我确实分配了正确的参数并将正确的存储过程也设置到 SqlCommand 中。DataTable“表”中确实有 5 列(与 SQL 表中的数量相同)。这是asp代码:

    <asp:GridView ID="grid" runat="server">
        <columns>
            <asp:BoundField DataField="data_1" HeaderText="data_1" sortExpression="data_1">
            <asp:BoundField DataField="data_2" HeaderText="data_2" sortExpression="data_2">
            <asp:BoundField DataField="data_3" HeaderText="data_3" sortExpression="data_3">
            <asp:BoundField DataField="data_4" HeaderText="data_4" sortExpression="data_4">
            <asp:BoundField DataField="data_5" HeaderText="data_5" sortExpression="data_5">
        </columns>
    </asp:GridView>

预先感谢您的帮助!

4

1 回答 1

2

最后调用 grid.DataBind() 。

于 2013-08-06T20:28:53.187 回答