Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / ASP.NET / Building Controls / August 2006

Tip: Looking for answers? Try searching our database.

Newbie, gridview problem Asp.net 2005

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
verci - 19 Aug 2006 08:44 GMT
Hi
Can anyone help me I'm running Win XP Pro SP2, VS2005 Team, .Net Framework
2.0 and SQL Server2005, I can't delete records using the gridviews
deletecommand,  the updatecommand works fine, edit and calcel all works fine
the problem is the delete part, I get the message:

-----------------------------------------------ERROR
MESSAGE----------------------------------------------------------------------------------------
Must declare the scalar variable "@productid".
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: Must declare the
scalar variable "@productid".
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Here's my default3.aspx  source code so far I've been stuck two days, thanks
and best regards. :(

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default3.aspx.vb"
Inherits="Default3" %>
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.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:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$
ConnectionStrings:NwindConnectionString %>"

SelectCommand="SELECT p.ProductID, p.ProductName, p.CategoryID,
c.CategoryName FROM Products p inner join Categories c on p.CategoryID =
c.CategoryID"

UpdateCommand="Update Products Set ProductID=@ProductID,
ProductName=@ProductName, CategoryID=@CategoryID where ProductID=@ProductID"

DeleteCommand="delete from products where productid=@productid">

</asp:SqlDataSource>

<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$
ConnectionStrings:NwindConnectionString %>"

SelectCommand="SELECT [CategoryID], [CategoryName] FROM [Categories]">

</asp:SqlDataSource>

</div>

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1" CellPadding="4" ForeColor="#333333"
GridLines="None" AllowPaging="True">

<Columns>

<asp:CommandField ButtonType="Image" CancelImageUrl="~/Images/Cancel.gif"
EditImageUrl="~/Images/WRITE2.gif"

ShowEditButton="True" UpdateImageUrl="~/Images/Update.gif"
DeleteImageUrl="~/Images/waste-trash.gif" ShowDeleteButton="True" />

<asp:TemplateField SortExpression="ProductID">

<EditItemTemplate>

<asp:Label ID="TextBox1" runat="server" Text='<%# Bind("ProductID")%>'
Visible=false></asp:Label>

</EditItemTemplate>

<ItemTemplate>

<asp:Label ID="Label2" runat="server" Text='<%# Bind("ProductID") %>'
Visible=false></asp:Label>

</ItemTemplate>

</asp:TemplateField>

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

<asp:TemplateField HeaderText="CategoryID" SortExpression="CategoryID">

<EditItemTemplate>

<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="SqlDataSource2"

DataTextField="CategoryName" DataValueField="CategoryID" SelectedValue='<%#
Bind("CategoryID") %>' >

</asp:DropDownList>

</EditItemTemplate>

<ItemTemplate>

<asp:Label ID="Label1" runat="server" Text='<%# Bind("CategoryName")
%>'></asp:Label>

</ItemTemplate>

</asp:TemplateField>

</Columns>

<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<SelectedRowStyle BackColor="#D1DDF1" ForeColor="#333333" Font-Bold="True"
/>

<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center"
/>

<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

<AlternatingRowStyle BackColor="White" />

<RowStyle BackColor="#EFF3FB" />

<EditRowStyle BackColor="#2461BF" />

</asp:GridView>

</form>

</body>

</html>
Muhammad Mosa - 21 Aug 2006 01:03 GMT
Sorry for making you wait,
Just add the property DataKeyNames="ProductID" to you grid view
This would work for you inshallah
Regards
Signature

Muhammad Mosa
Software Engineer & Solution Developer
MCT/MCSD.NET
MCTS: .Net 2.0 Web Applications
MCTS: .Net 2.0 Windows Applications

> Hi
> Can anyone help me I'm running Win XP Pro SP2, VS2005 Team, .Net Framework
[quoted text clipped - 138 lines]
>
> </html>
verci - 28 Aug 2006 07:36 GMT
hey thanks!!!

> Sorry for making you wait,
> Just add the property DataKeyNames="ProductID" to you grid view
[quoted text clipped - 153 lines]
>>
>> </html>

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.