Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

How To Update A Column In A DataGrid Using C#.NET?

I am getting InvalidCastException as (Specified cast is not
valid) while updating 2nd column in a datagrid?
Id,firstname,lastname are the three columns of my datagrid
respectively. I wanted to edit the second column(lastname)
and update it. I did the following code in DataGrid's
updatecommand(),but failed to update !

Int varid=(int)DataGrid1.DataKeys[e.Item.ItemIndex];
TextBox lnm=(TextBox)e.Item.Cells[2].Controls[0]; string
str=lnm.Text ; SqlCommand cmd=new SqlCommand("update
customer set lastname='" + str + "' where id=" + varid
+ "",con); cmd.ExecuteNonQuery(); DataGrid1.EditItemIndex=-
1; DataGrid1.DataBind();

Answer Posted / pk

public void DataGrid1_Update(Object sender,
DataGridCommandEventArgs e)
{

string unitprice =
((TextBox)e.Item.Cells[3].Controls[0]).Text;

string quantity =
((TextBox)e.Item.Cells[4].Controls[0]).Text;

string discount =
((TextBox)e.Item.Cells[5].Controls[0]).Text;

int orderid =
(int)DataGrid1.DataKeys[(int)e.Item.ItemIndex];

string productid =
((TextBox)e.Item.Cells[2].Controls[0]).Text;

try
{

string updateCmd = "UPDATE [Order Details] SET
UnitPrice = @UnitPrice,"

+ "Quantity = @Quantity, Discount = @Discount
where OrderId =@OrderId and ProductId=@ProductId";

SqlConnection cn = new SqlConnection(strConn);

SqlCommand myCommand = new SqlCommand(updateCmd,
cn);

myCommand.Parameters.Add(new
SqlParameter("@UnitPrice", Convert.ToDecimal(unitprice)));

myCommand.Parameters.Add(new
SqlParameter("@Quantity", Convert.ToInt16(quantity)));

myCommand.Parameters.Add(new
SqlParameter("@Discount", Convert.ToInt16(discount)));

myCommand.Parameters.Add(new
SqlParameter("@OrderId", orderid));

myCommand.Parameters.Add(new
SqlParameter("@ProductId", Convert.ToInt16(productid)));

cn.Open();

myCommand.ExecuteNonQuery();

DataGrid1.EditItemIndex = -1;

BindGrid();

}

catch (Exception ex)
{

lblError.Visible = true;

lblError.Text = (ex.Message);

}

Is This Answer Correct ?    2 Yes 5 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What are the objects of ado.net?

1021


What is openquery?

932


What is typed dataset ?

1121


What is ado or jdbc?

880


Does ado.net use odbc?

904


What is the difference between DataReader and DataSet in ADO.NET?

1087


What is the difference between data grid and data repeater?

1014


What is ado.net components?

903


What is the executescalar method?

1037


What are the classes in System.Data.Common Namespace?

1101


What is connection pooling and what is the maximum pool size in ado.net connection string?

906


What is sqldatasource?

886


Describe the disconnected architecture of ADO.NET’s data access model.

1004


How will you fill the gridview by using datatable object at runtime?

987


What is data view and variable view?

861