ASP.NET SqlDataSource Gridview问题

用户名

这有一些问题。现在,我要做的就是让delete命令起作用。编辑也不起作用,并且猜测问题是相似的。这是我自己的学习项目。任何帮助是极大的赞赏。谢谢。

 <asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" GridLines="Both" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" >
    <AlternatingRowStyle BackColor="White" />
    <EditRowStyle BackColor="#7C6F57" />

    <FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
    <HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
    <PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
    <RowStyle BackColor="#E3EAEB" />
    <SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />
    <SortedAscendingCellStyle BackColor="#F8FAFA" />
    <SortedAscendingHeaderStyle BackColor="#246B61" />
    <SortedDescendingCellStyle BackColor="#D4DFE1" />
    <SortedDescendingHeaderStyle BackColor="#15524A" />
    <Columns>

      <asp:BoundField DataField="MenuID" HeaderText="ID" Visible="true" ReadOnly="true" />

      <asp:TemplateField HeaderText="Date">
        <EditItemTemplate>
          <asp:TextBox ID="txtGridDate" runat="server" Text='<%# Bind("Date", "{0:M/dd/yyyy}")%>' Width="75px"></asp:TextBox>
        </EditItemTemplate>
        <ItemTemplate>
          <asp:Label ID="lblGridDate" runat="server" Text='<%# Bind("Date", "{0:M/dd/yyyy}") %>'></asp:Label>
        </ItemTemplate>
      </asp:TemplateField>

      <asp:TemplateField HeaderText="Description">
        <EditItemTemplate>
          <asp:TextBox ID="txtGridDescription" runat="server" Text='<%# Bind("Description") %>' Width="600px"></asp:TextBox>
        </EditItemTemplate>
        <ItemTemplate>
          <asp:Label ID="lblGridDescription" runat="server" Text='<%# Bind("Description") %>'></asp:Label>
        </ItemTemplate>
      </asp:TemplateField>

      <asp:TemplateField HeaderText="MealType">
        <EditItemTemplate>
          <asp:DropDownList ID="ddlGridMealType" runat="server">
            <asp:ListItem Value="1" Text="Breakfast"></asp:ListItem>
            <asp:ListItem Value="2" Text="Dinner"></asp:ListItem>
          </asp:DropDownList>
        </EditItemTemplate>
        <ItemTemplate>
          <asp:Label ID="lblGridType" runat="server" Text='<%# Bind("MealType") %>'></asp:Label>
        </ItemTemplate>         
      </asp:TemplateField>

      <asp:CommandField ButtonType="Button" ShowEditButton="true" ValidationGroup="edit" />     
      <asp:CommandField ButtonType="Button" ShowDeleteButton="true" />
    </Columns>        
  </asp:GridView>
  <asp:SqlDataSource 
    ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:CampRandolphConnectionString %>" 
    SelectCommand="sproc_sel_AllMeals" SelectCommandType="StoredProcedure" 
    InsertCommand="sproc_ins_Meal" InsertCommandType="StoredProcedure"
    UpdateCommand="sproc_edit_Meal" UpdateCommandType="StoredProcedure" 
    DeleteCommand="sproc_del_MenuItem" DeleteCommandType="StoredProcedure" >
    <InsertParameters>
      <asp:Parameter DbType="Date" Name="Date" />
      <asp:Parameter Name="Description" Type="String" />
      <asp:Parameter Name="MealCategoryID" Type="Int32" />
    </InsertParameters>
    <UpdateParameters>
      <asp:Parameter Name="MenuID" Type="Int32" />
      <asp:Parameter DbType="Date" Name="Date" />
      <asp:Parameter Name="Description" Type="String" />
      <asp:Parameter Name="MealCategoryID" Type="Int32" />
    </UpdateParameters>
    <DeleteParameters>
      <asp:Parameter Name="MenuID" Type="Int32" />
    </DeleteParameters>
  </asp:SqlDataSource>

这是存储过程:

ALTER PROCEDURE [dbo].[sproc_del_MenuItem]
@MenuID int
AS
BEGIN
DELETE FROM CampRandolph.dbo.Menu
WHERE @MenuID = MenuID
END

提前致谢。

里克·S

您的Where子句在您的存储过程中是错误的。应该:

ALTER PROCEDURE [dbo].[sproc_del_MenuItem]
@MenuID int
AS
BEGIN
DELETE FROM CampRandolph.dbo.Menu
WHERE MenuID = @MenuID
END

在GridView的定义中,添加DataKeyNames属性:

<asp:GridView ID="GridView1" runat="server" DataKeyNames="MenuID" ....

我还读到HeaderText必须与键名相同:

 <asp:BoundField DataField="MenuID" HeaderText="MenuID" Visible="true" ReadOnly="true" />

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

GridView按钮和sqldatasource问题

来自分类Dev

Asp.net GridView OnRowUpdating

来自分类Dev

总行数SqlDataSource GridView

来自分类Dev

使用SqlDataSource将查询绑定到asp.net中的Gridview

来自分类Dev

将SqlDataSource链接到ASP.NET中单个项目的标签

来自分类Dev

在ASP.NET标记中的SqlDataSource中注释一行代码

来自分类Dev

ASP.net gridview编辑模式下的下拉列表问题

来自分类Dev

SqlDataSource上的存储过程无法在带有单引号C#的SelectCommand中使用单引号C#asp.net

来自分类Dev

SQL-根据Select语句中的布尔条件添加/禁用Where子句(ASP.net SQLDataSource)

来自分类Dev

如何在ASP.NET中使用SqlDataSource和Parameters插入表中?

来自分类Dev

asp.net的ViewState问题

来自分类Dev

排序GridView asp.net

来自分类Dev

如何自定义ASP.NET图表数据绑定到SqlDataSource

来自分类Dev

如何通过Asp.net中的SqlDataSource存储过程参数将Int32输入发送到数据库

来自分类Dev

ASP.Net打印GridView

来自分类Dev

ASP.NET sqldatasource.select(arg)给出stackoverflow.exception错误

来自分类Dev

asp.net sqldatasource解析错误

来自分类Dev

从ASP.NET中的SqlDataSource获取更新语法错误

来自分类Dev

ASP.net授权问题

来自分类Dev

ASP.NET SqlDataSource筛选器行为

来自分类Dev

ASP.NET/MySQL SQLDataSource存储过程

来自分类Dev

将查询结果加载到gridview asp.net时出现的问题

来自分类Dev

SqlDataSource上的存储过程无法在带有单引号C#的SelectCommand中使用单引号C#asp.net

来自分类Dev

如何在ASP.NET中将两个图表系列绑定到一个SqlDataSource对象?

来自分类Dev

通过gridview单元格过滤SqlDataSource

来自分类Dev

ASP.Net C#-SqlDataSource和Oracle:找不到网络路径

来自分类Dev

ASP.NET并将变量从Request.Querystring传递到SQLdatasource SelectCommand

来自分类Dev

ASP.NET Gridview 出类拔萃

来自分类Dev

使用 SQLDataSource / Asp.Net 在 Gridview 中显示来自 Guid 的 ContactName

Related 相关文章

  1. 1

    GridView按钮和sqldatasource问题

  2. 2

    Asp.net GridView OnRowUpdating

  3. 3

    总行数SqlDataSource GridView

  4. 4

    使用SqlDataSource将查询绑定到asp.net中的Gridview

  5. 5

    将SqlDataSource链接到ASP.NET中单个项目的标签

  6. 6

    在ASP.NET标记中的SqlDataSource中注释一行代码

  7. 7

    ASP.net gridview编辑模式下的下拉列表问题

  8. 8

    SqlDataSource上的存储过程无法在带有单引号C#的SelectCommand中使用单引号C#asp.net

  9. 9

    SQL-根据Select语句中的布尔条件添加/禁用Where子句(ASP.net SQLDataSource)

  10. 10

    如何在ASP.NET中使用SqlDataSource和Parameters插入表中?

  11. 11

    asp.net的ViewState问题

  12. 12

    排序GridView asp.net

  13. 13

    如何自定义ASP.NET图表数据绑定到SqlDataSource

  14. 14

    如何通过Asp.net中的SqlDataSource存储过程参数将Int32输入发送到数据库

  15. 15

    ASP.Net打印GridView

  16. 16

    ASP.NET sqldatasource.select(arg)给出stackoverflow.exception错误

  17. 17

    asp.net sqldatasource解析错误

  18. 18

    从ASP.NET中的SqlDataSource获取更新语法错误

  19. 19

    ASP.net授权问题

  20. 20

    ASP.NET SqlDataSource筛选器行为

  21. 21

    ASP.NET/MySQL SQLDataSource存储过程

  22. 22

    将查询结果加载到gridview asp.net时出现的问题

  23. 23

    SqlDataSource上的存储过程无法在带有单引号C#的SelectCommand中使用单引号C#asp.net

  24. 24

    如何在ASP.NET中将两个图表系列绑定到一个SqlDataSource对象?

  25. 25

    通过gridview单元格过滤SqlDataSource

  26. 26

    ASP.Net C#-SqlDataSource和Oracle:找不到网络路径

  27. 27

    ASP.NET并将变量从Request.Querystring传递到SQLdatasource SelectCommand

  28. 28

    ASP.NET Gridview 出类拔萃

  29. 29

    使用 SQLDataSource / Asp.Net 在 Gridview 中显示来自 Guid 的 ContactName

热门标签

归档