validation in datagrid while insert update in asp.net
- by abhi
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default7.aspx.cs" Inherits="Default7" %
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %
Untitled Page
<telerik:GridTemplateColumn Visible="false">
<ItemTemplate>
<asp:Label ID="lblEmpID" runat="server" Text='<%# bind("pid") %>'>
</asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn UniqueName="Fname" HeaderText="Fname" DataField="Fname" CurrentFilterFunction="NotIsNull" SortExpression="Fname">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="Lname" HeaderText="Lname" DataField="Lname" CurrentFilterFunction="NotIsNull" SortExpression="Lname">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="Designation" HeaderText="Designation" DataField="Designation" CurrentFilterFunction="NotIsNull" SortExpression="Designation">
</telerik:GridBoundColumn>
<telerik:GridEditCommandColumn>
</telerik:GridEditCommandColumn>
<telerik:GridButtonColumn CommandName="Delete" Text="Delete" UniqueName="column">
</telerik:GridButtonColumn>
</Columns>
<EditFormSettings>
<FormTemplate>
<table>
<tr>
<td>Fname*</td>
<td>
<asp:HiddenField ID="Fname" runat="server" Visible="false" />
<asp:TextBox ID="txtFname" runat="server" Text='<%#("Fname")%>'>
</asp:TextBox>
<asp:RequiredFieldValidator ID="EvalFname" ControlToValidate="txtFname" ErrorMessage="Enter Name" runat="server" ValidationGroup="Update">
*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td>Lname*</td>
<td>
<asp:HiddenField ID="HiddenField1" runat="server" Visible="false" />
<asp:TextBox ID="txtLname" runat="server" Text='<%#("Lname")%>'>
</asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" ControlToValidate="txtLname" ErrorMessage="Enter Name" runat="server" ValidationGroup="Update">
*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td>Designation*
</td>
<td>
<asp:HiddenField ID="HiddenField2" runat="server" Visible="false" />
<asp:TextBox ID="txtDesignation" runat="server" Text='<%#("Designation")%>'>
</asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" ControlToValidate="txtDesignation" ErrorMessage="Enter Designation" runat="server" ValidationGroup="Update">
*</asp:RequiredFieldValidator>
</td>
</tr>
</table>
</FormTemplate>
<EditColumn UpdateText="Update record" UniqueName="EditCommandColumn1" CancelText="Cancel edit">
</EditColumn>
</EditFormSettings>
</MasterTableView>
</telerik:RadGrid>
</form>
this is my code i want to perform validation using the required validators but i think m missing smthin so pls help,
here's my code behind
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using Telerik.Web.UI;
public partial class Default7 : System.Web.UI.Page
{
string strQry;
public SqlDataAdapter da;
public DataSet ds;
public SqlCommand cmd;
public DataTable dt;
string strCon = "Data Source=MINETDEVDATA; Initial Catalog=ML_SuppliersProd; User Id=sa; Password=@MinetApps7;";
public SqlConnection con;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void RadGrid1_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
dt = new DataTable();
con = new SqlConnection(strCon);
da = new SqlDataAdapter();
try
{
strQry = "SELECT * FROM table2";
con.Open();
da.SelectCommand = new SqlCommand(strQry,con);
da.Fill(dt);
RadGrid1.DataSource = dt;
}
finally
{
con.Close();
}
}
protected void RadGrid1_DeleteCommand(object source, Telerik.Web.UI.GridCommandEventArgs e)
{
con = new SqlConnection(strCon);
cmd = new SqlCommand();
GridDataItem item = (GridDataItem)e.Item;
string pid = item.OwnerTableView.DataKeyValues[item.ItemIndex]["pid"].ToString();
con.Open();
string delete = "DELETE from table2 where pid='"+pid+"'";
cmd.CommandText = delete;
cmd.Connection = con;
cmd.ExecuteNonQuery();
con.Close();
}
protected void RadGrid1_UpdateCommand(object source, GridCommandEventArgs e)
{
GridEditableItem radgriditem = e.Item as GridEditableItem;
string pid = radgriditem.OwnerTableView.DataKeyValues[radgriditem.ItemIndex]["pid"].ToString();
string firstname = (radgriditem["Fname"].Controls[0] as TextBox).Text;
string lastname = (radgriditem["Lname"].Controls[0] as TextBox).Text;
string designation = (radgriditem["Designation"].Controls[0] as TextBox).Text;
con = new SqlConnection(strCon);
cmd = new SqlCommand();
try
{
con.Open();
string update = "UPDATE table2 set Fname='" + firstname + "',Lname='" + lastname + "',Designation='" + designation + "' WHERE pid='" + pid + "'";
cmd.CommandText = update;
cmd.Connection = con;
cmd.ExecuteNonQuery();
con.Close();
}
catch (Exception ex)
{
RadGrid1.Controls.Add(new LiteralControl("Unable to update Reason: " + ex.Message));
e.Canceled = true;
}
}
protected void RadGrid1_InsertCommand(object source, GridCommandEventArgs e)
{
GridEditFormInsertItem insertitem = (GridEditFormInsertItem)e.Item;
string firstname = (insertitem["Fname"].Controls[0] as TextBox).Text;
string lastname = (insertitem["Lname"].Controls[0] as TextBox).Text;
string designation = (insertitem["Designation"].Controls[0] as TextBox).Text;
con = new SqlConnection(strCon);
cmd = new SqlCommand();
try
{
con.Open();
String insertQuery = "INSERT into table1(Fname,Lname,Designation) Values ('" + firstname + "','" + lastname + "','" + designation + "')";
cmd.CommandText = insertQuery;
cmd.Connection = con;
cmd.ExecuteNonQuery();
con.Close();
}
catch(Exception ex)
{
RadGrid1.Controls.Add(new LiteralControl("Unable to insert Reason:" + ex.Message));
e.Canceled = true;
}
}
}