Avatar billede xitmorph Nybegynder
18. juni 2005 - 15:48 Der er 7 kommentarer og
1 løsning

Spørgsm. ang ASP 2.0 Delete knap i Gridview virker ikke

Hej folkens.. jeg sidder og roder med .net 2 og har fulgt et par eksempler på microsoft siden.. hvor de ilustrerer hvordan man opretter et gridview med dataacces osv.. Jeg kan godt få fyldt gridet men når jeg trykker på del knappen gør den intet.. aner sq ikke hvad der er galt.. mit gridview ser således ud:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" CellPadding="4" ForeColor="#333333" GridLines="None" Width="538px" OnRowDeleted="GridView1_RowDeleted" Height="86px">
                                                <Columns>
                                                    <asp:CommandField ShowDeleteButton="True" />
                                                    <asp:BoundField DataField="OrderID" HeaderText="OrderID" SortExpression="OrderID" />
                                                    <asp:BoundField DataField="ProductID" HeaderText="ProductID" SortExpression="ProductID" />
                                                    <asp:BoundField DataField="Quantity" HeaderText="Quantity" SortExpression="Quantity" />
                                                    <asp:BoundField DataField="UnitCost" HeaderText="UnitCost" SortExpression="UnitCost" />
                                                </Columns>
                                                <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                                <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                                                <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                                                <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                                                <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                                <EditRowStyle BackColor="#999999" />
                                                <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                                            </asp:GridView>

og min datasource:


<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:**************** %>"
                                                        SelectCommand="SELECT * FROM [CMRC_OrderDetails]"
                                                        DeleteCommand="DELETE FROM [CMRC_OrderDetails] WHERE [OrderID] = @OrderID ">
                                                        <DeleteParameters>
                                                            <asp:QueryStringParameter Name="OrderID" QueryStringField="OrderID" Type="Int32" />
                                                        </DeleteParameters>
                                                    </asp:SqlDataSource>

håber i kan hjælpe.. :-)
Avatar billede snepnet Nybegynder
18. juni 2005 - 15:55 #1
du har angivet din parameter som en querystring parameter - det er nok bare det der er fejlen.
mvh
Avatar billede snepnet Nybegynder
18. juni 2005 - 16:02 #2
du kan lige få et komplet eksempel her (connectionstring mv er i web.config, men der har du jo nok dine egne ;o):

mvh

<%@ Page Language="C#" CompileWith="Default.aspx.cs" ClassName="Default_aspx" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" Runat="server" DataKeyNames="SnippetsId" DataSourceID="SqlDataSource1"
            EmptyDataText="There are no data records to display." AutoGenerateColumns="False"
            AllowPaging="True" AllowSorting="True" BorderWidth="1px" BackColor="LightGoldenrodYellow"
            GridLines="None" CellPadding="2" BorderColor="Tan" ForeColor="Black">
            <FooterStyle BackColor="Tan"></FooterStyle>
            <PagerStyle ForeColor="DarkSlateBlue" HorizontalAlign="Center" BackColor="PaleGoldenrod"></PagerStyle>
            <HeaderStyle Font-Bold="True" BackColor="Tan"></HeaderStyle>
            <AlternatingRowStyle BackColor="PaleGoldenrod"></AlternatingRowStyle>
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True"></asp:CommandField>
                <asp:BoundField ReadOnly="True" HeaderText="SnippetsId" DataField="SnippetsId" SortExpression="SnippetsId"></asp:BoundField>
                <asp:BoundField HeaderText="FldString" DataField="FldString" SortExpression="FldString"></asp:BoundField>
                <asp:BoundField HeaderText="FldInterger" DataField="FldInterger" SortExpression="FldInterger"></asp:BoundField>
                <asp:CheckBoxField HeaderText="FldBool" SortExpression="FldBool" DataField="FldBool"></asp:CheckBoxField>
                <asp:BoundField HeaderText="FldDateTime" DataField="FldDateTime" SortExpression="FldDateTime"></asp:BoundField>
            </Columns>
            <SelectedRowStyle ForeColor="GhostWhite" BackColor="DarkSlateBlue"></SelectedRowStyle>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" Runat="server" ProviderName="<%$ ConnectionStrings:AppConnectionString1.ProviderName %>"
            UpdateCommand="UPDATE [TblSnippets] SET [FldString] = @FldString, [FldInterger] = @FldInterger, [FldBool] = @FldBool, [FldDateTime] = @FldDateTime WHERE [SnippetsId] = @original_SnippetsId"
            InsertCommand="INSERT INTO [TblSnippets] ([FldString], [FldInterger], [FldBool], [FldDateTime]) VALUES (@FldString, @FldInterger, @FldBool, @FldDateTime)"
            DeleteCommand="DELETE FROM [TblSnippets] WHERE [SnippetsId] = @original_SnippetsId"
            SelectCommand="SELECT [SnippetsId], [FldString], [FldInterger], [FldBool], [FldDateTime] FROM [TblSnippets]"
            ConnectionString="<%$ ConnectionStrings:AppConnectionString1 %>">
            <DeleteParameters>
                <asp:Parameter Type="Int32" Name="SnippetsId"></asp:Parameter>
            </DeleteParameters>
            <InsertParameters>
                <asp:Parameter Type="String" Name="FldString"></asp:Parameter>
                <asp:Parameter Type="Int32" Name="FldInterger"></asp:Parameter>
                <asp:Parameter Type="Boolean" Name="FldBool"></asp:Parameter>
                <asp:Parameter Type="DateTime" Name="FldDateTime"></asp:Parameter>
            </InsertParameters>
            <UpdateParameters>
                <asp:Parameter Type="String" Name="FldString"></asp:Parameter>
                <asp:Parameter Type="Int32" Name="FldInterger"></asp:Parameter>
                <asp:Parameter Type="Boolean" Name="FldBool"></asp:Parameter>
                <asp:Parameter Type="DateTime" Name="FldDateTime"></asp:Parameter>
                <asp:Parameter Type="Int32" Name="SnippetsId"></asp:Parameter>
            </UpdateParameters>
        </asp:SqlDataSource>
    </div>
    </form>
</body>
</html>
Avatar billede snepnet Nybegynder
18. juni 2005 - 16:03 #3
læg mærke til deleteparameteren :
<DeleteParameters>
  <asp:Parameter Type="Int32" Name="SnippetsId"></asp:Parameter>
</DeleteParameters>
mvh
Avatar billede xitmorph Nybegynder
18. juni 2005 - 16:03 #4
ok.. 1000 tak.. smid lige et svar.. :-)
Avatar billede snepnet Nybegynder
18. juni 2005 - 16:05 #5
får du her :o)
mvh
Avatar billede xitmorph Nybegynder
18. juni 2005 - 18:07 #6
ok.. jeg har fulgt dit eksempel.. men det virker stadig ikke.. den gør intet når jeg trykker på del.. det er mega underligt..
Avatar billede snepnet Nybegynder
18. juni 2005 - 23:10 #7
kan du ikke smide din færdige kode herud?
Avatar billede xitmorph Nybegynder
19. juni 2005 - 16:54 #8
jo den er her..

<asp:GridView ID="GridView1" Runat="server" DataKeyNames="OrderID" DataSourceID="SqlDataSource1"
            EmptyDataText="There are no data records to display." AutoGenerateColumns="False"
            AllowPaging="True" AllowSorting="True" BorderWidth="1px" BackColor="Gold"
            GridLines="None" CellPadding="2" BorderColor="Tan" ForeColor="Black" Width="541px">
            <FooterStyle BackColor="Tan"></FooterStyle>
            <PagerStyle ForeColor="DarkSlateBlue" HorizontalAlign="Center" BackColor="PaleGoldenrod"></PagerStyle>
            <HeaderStyle Font-Bold="True" BackColor="Tan"></HeaderStyle>
            <AlternatingRowStyle BackColor="PaleGoldenrod"></AlternatingRowStyle>
            <Columns>
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="false"></asp:CommandField>
                <asp:BoundField ReadOnly="True" HeaderText="OrderID" DataField="OrderID" SortExpression="OrderID"></asp:BoundField>
                <asp:BoundField HeaderText="ProductID" DataField="ProductID" SortExpression="ProductID"></asp:BoundField>
                <asp:BoundField HeaderText="Quantity" DataField="Quantity" SortExpression="Quantity"></asp:BoundField>
                <asp:BoundField HeaderText="UnitCost" DataField="UnitCost" SortExpression="UnitCost"></asp:BoundField>
               
            </Columns>
            <SelectedRowStyle ForeColor="GhostWhite" BackColor="DarkSlateBlue"></SelectedRowStyle>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" Runat="server" ProviderName="<%$ ConnectionStrings:hvidsted_itConnectionString.ProviderName %>"       
            DeleteCommand="DELETE FROM [CMRC_OrderDetails] WHERE [OrderID] = @orderID"
            SelectCommand="SELECT OrderID, ProductID, Quantity, UnitCost FROM CMRC_OrderDetails WHERE (OrderID = @OrderID)"
            ConnectionString="<%$ ConnectionStrings:hvidsted_itConnectionString %>" OnSelecting="SqlDataSource1_Selecting">         
            <DeleteParameters>
                <asp:Parameter Type="Int32" Name="OrderID"></asp:Parameter>
            </DeleteParameters>           
            <SelectParameters>
                <asp:Parameter Name="OrderID" />
            </SelectParameters>
        </asp:SqlDataSource>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester