首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

公告栏消息列表异常:DataBinding:“System.Data.DataRowView”不包含名为“公告编号”的属性

2013-12-02 
公告栏消息列表错误:DataBinding:“System.Data.DataRowView”不包含名为“公告编号”的属性。代码:asp:GridVi

公告栏消息列表错误:DataBinding:“System.Data.DataRowView”不包含名为“公告编号”的属性。
代码:
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="AnnouceID" HeaderText="AnnouceID" 
                    InsertVisible="False" ReadOnly="True" SortExpression="AnnouceID" 
                    Visible="False" />
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:HyperLink ID="HyperLink1" runat="server" 
                            NavigateUrl='<%# Eval("AnnouceID","~/frontpage/show.aspx?AnnouceID={0}") %>' 
                            ToolTip='<%# Eval("公告名称") %>'></asp:HyperLink>                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:BBCConnectionString %>" 
            SelectCommand="SELECT [公告编号] AS AnnouceID, LEFT([公告名称],15) AS Title FROM [公告表]">        </asp:SqlDataSource>

百度查过,本人明白错误是:HyperLink1绑定了AnnouceID, 而数据源SqlDataSource1里却没有AnnouceID 这个值。

但是本人用SelectCommand语句在SQL Server 2005里面能输出结果,即本人的AnnouceID 能显示值。是为什么?
顺便请问一下,NavigateUrl里面的show.aspx要添加什么吗?本人什么也没有添加,只是新建了一个show.aspx ASP.NET ?绑定数据 公告栏消息列表
[解决办法]
<asp:HyperLink ID="HyperLink1" runat="server" 
                             NavigateUrl='<%# Eval("AnnouceID","~/frontpage/show.aspx?AnnouceID={0}") %>' 
                             ToolTip='<%# Eval("Title") %>'></asp:HyperLink>   

这样写试一下

[解决办法]

引用:
代码:
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="AnnouceID" HeaderText="AnnouceID" 
                    InsertVisible="False" ReadOnly="True" SortExpression="AnnouceID" 
                    Visible="False" />
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:HyperLink ID="HyperLink1" runat="server" 


                            NavigateUrl='<%# Eval("AnnouceID","~/frontpage/show.aspx?AnnouceID={0}") %>' 
                            ToolTip='<%# Eval("公告名称") %>'></asp:HyperLink>                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:BBCConnectionString %>" 
            SelectCommand="SELECT [公告编号] AS AnnouceID, LEFT([公告名称],15) AS Title FROM [公告表]">        </asp:SqlDataSource>

百度查过,本人明白错误是:HyperLink1绑定了AnnouceID, 而数据源SqlDataSource1里却没有AnnouceID 这个值。

但是本人用SelectCommand语句在SQL Server 2005里面能输出结果,即本人的AnnouceID 能显示值。是为什么?
顺便请问一下,NavigateUrl里面的show.aspx要添加什么吗?本人什么也没有添加,只是新建了一个show.aspx



查看你获取数据源的SQL ,里面是否把你的那个ID也加进去了!

热点排行