【问题标题】:Create Grid view with master page in asp在 asp 中创建带有母版页的网格视图
【发布时间】:2013-07-19 09:19:58
【问题描述】:

我是 asp 新手,我用母版页创建了一个网格视图。但它在连接字符串中显示错误。谁能帮帮我?

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" 
AutoGenerateEditButton="true" AutoGenerateDeleteButton="false" 
DataSourceID="SqlDataSource1" Font-Names="Arial" Font-Size="Smaller" DataKeyNames="Logid" > 
<columns>

          <asp:BoundField DataField="Logid" HeaderText="Logid" SortExpression="Logid" />
           <asp:BoundField DataField="Username" HeaderText="Username" SortExpression="Username" />
           <asp:BoundField DataField="PASSWORD" HeaderText="PASSWORD" SortExpression="PASSWORD" />

           <asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />

           <asp:BoundField DataField="E_MAIL" HeaderText="E_MAIL" SortExpression="E_MAIL" />

</columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1"runat="server" ConnectionString="<%$ ConnectionString:SaqibConnectionString %>" 
SelectCommand="SELECT [Logid], [Username], [PASSWORD], [Time_Logged_in], [Time_Logged_Out], [Status], [Date_Logged_in], [E_MAIL]"
UpdateCommand="Update Log_Users SET Logid=@Logid, Username=@Username, PASSWORD=@PASSWORD, Status=@Status, E_mail=@E_mail"
DeleteCommand="DELETE FROM Log_Users WHERE Logid = @Logid">
<UpdateParameters>
                <asp:Parameter Name="Logid" />
                 <asp:Parameter Name="Username" />
                  <asp:Parameter Name="PASSWORD" />
                   <asp:Parameter Name="Status" />
                    <asp:Parameter Name="E_MAIL" />

</UpdateParameters>
</asp:SqlDataSource>
</asp:Content>

【问题讨论】:

  • 错误是什么?您在 webconfig connectionStrings 部分中是否有名为“SaqibConnectionString”的连接字符串?
  • 这是连接字符串...connectionString="Data Source=localhost; Initial Catalog=Saqib; User Id=sa; Password=angel"
  • 我在这行遇到错误.....
  • 你能在你的问题中正确地发布连接字符串的代码吗?

标签: c# asp.net gridview master-pages connection-string


【解决方案1】:

你确定它不是像 ID="SqlDataSource1" 和 runat="server" 位之间的空格这样简单的东西。

这会导致错误“服务器标签格式不正确”错误。

【讨论】:

  • 如果您直接从项目中复制代码,ID="SqlDataSource1"runat="server" 部分之间没有空格。你的代码是ID="SqlDataSource1"runat="server" ,应该是ID="SqlDataSource1" runat="server"
  • 在给出空间后它显示解析器错误消息:类型'System.Web.UI.WebControls.SqlDataSource'没有名为'ConnectionStrings'的公共属性。
  • 它需要说ConnectionString="&lt;%$ ConnectionStrings:SaqibConnectionString %&gt;"这意味着应该删除等号=之前的ConnectionString的复数形式,并且's'应该在&lt;% %&gt;标签中。
【解决方案2】:

连接字符串名称应该与您在网络配置中给出的匹配,

ConnectionString="&lt;%$ ConnectionString:SaqibConnectionString %&gt;"改成

ConnectionString="<%$ ConnectionStrings:db %>"

或将配置文件中的名称更改为您的连接字符串为SaqibConnectionString

更新

 ConnectionString="<%$ ConnectionString:SaqibConnectionString %>"
                                      /\
                                you missed `s` here 

连接字符串设置错误,应该是ConnectionStrings,注意最后是s

下面试试

 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        SelectCommand="SELECT [Logid], [Username], [PASSWORD], [Time_Logged_in], [Time_Logged_Out], [Status], [Date_Logged_in], [E_MAIL] from Log_Users"
        UpdateCommand="Update Log_Users SET Logid=@Logid, Username=@Username, PASSWORD=@PASSWORD, Status=@Status, E_mail=@E_mail"
        DeleteCommand="DELETE FROM Log_Users WHERE Logid = @Logid" 
    ConnectionString="<%$ ConnectionStrings:db %>">
        <DeleteParameters>
            <asp:Parameter Name="Logid" />
        </DeleteParameters>
        <UpdateParameters>
            <asp:Parameter Name="Logid" />
            <asp:Parameter Name="Username" />
            <asp:Parameter Name="PASSWORD" />
            <asp:Parameter Name="Status" />
            <asp:Parameter Name="E_MAIL" />
        </UpdateParameters>
    </asp:SqlDataSource>

【讨论】:

  • 解析器错误信息:服务器标签格式不正确。
  • 非常感谢...这个错误已解决但现在我在我的 sspx.cs 文件中遇到问题
【解决方案3】:

如上所示,您的连接字符串名称为db,但您使用SaqibConnectionString 作为连接字符串。因此请使用ConnectionString="&lt;%$ ConnectionString:db %&gt;" 代替 ConnectionString="&lt;%$ ConnectionString:SaqibConnectionString %&gt;"

更新1

你的选择语句不正确

SelectCommand="SELECT [Logid], [Username], [PASSWORD], [Time_Logged_in], [Time_Logged_Out], [Status], [Date_Logged_in], [E_MAIL]"

select 语句应该是 select [Logid], [Username], [PASSWORD], [Time_Logged_in], [Time_Logged_Out], [Status], [Date_Logged_in], [E_MAIL] from Log_Users 您在 select 语句中缺少 from tablename

更新2

ID="SqlDataSource1"runat="server" 之间没有空格

【讨论】:

  • 实际上它显示解析器错误消息:服务器标签格式不正确。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-24
  • 2011-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多