使用ASP.NET GridView定义了DataSource和DataSourceID错误

时间:2011-01-26 10:23:51

标签: c# asp.net gridview datasource sqldatasource

是的,我知道。可能存在的问题。

但是在gridview上情况不同。

<asp:GridView ID="Grid_Goster" runat="server" AutoGenerateColumns="False" CellPadding="4" 
            DataSourceID="SqlDataSource3" ForeColor="#333333" GridLines="None" 
            Height="144px" Width="316px">

<asp:SqlDataSource ID="SqlDataSource3" runat="server" 
            ConnectionString="<%$ ConnectionStrings:SqlServerCstr %>" 
            SelectCommand="SELECT * FROM [AVUKAT]"></asp:SqlDataSource>

我得到这样的错误:

  

DataSource和DataSourceID都是   在'Grid_Goster'上定义。删除一个   定义。       描述:期间发生了未处理的异常   执行当前的Web请求。   请查看堆栈跟踪了解更多信息   有关错误的信息和位置   它起源于代码。

Exception Details: System.InvalidOperationException: Both
     

DataSource和DataSourceID是   在'Grid_Goster'上定义。删除一个   定义

来源错误:

An unhandled exception was generated during the execution of the
     

当前的网络请求。信息   关于的起源和位置   可以使用

识别例外

在我的.cs文件中有这样的代码。

SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

            Grid_Goster.DataSource = dr;
            Grid_Goster.Visible = true;

我认为此代码可以正常运行。 如何解决此DataSourceDataSourceID问题?

2 个答案:

答案 0 :(得分:3)

也许这是一个愚蠢的问题;但要求澄清是件好事。您是否在同一控件上同时指定了数据源对象(在您的代码中) AND DatasourceID(在您的ASPX标记中)?我想,由于数据源歧义,当你尝试Databind时它不会起作用。

答案 1 :(得分:0)

后面的代码中必须有手动绑定。删除手动绑定或SQL数据源。