Thursday, 30 June 2011

bind state dropdown and by selecting state valid cities display related to that state


use database master
create table Statee(id int, namee varchar(50))
insert into Statee values(1,'Maharashtra')
insert into Statee values(2,'UttarPradesh')
insert into Statee values(3,'AndhraPradesh')
insert into Statee values(4,'Bihar')
drop table statee


create table City(id int , namee varchar(50))
insert into City values (1,'Mumbai')
insert into City values(1,'Pune')
insert into City values(1,'Nashik')
insert into City Values(2,'Luckhnow')
insert into City Values(2,'Kanpur')
insert into City Values(3,'Hyderabad')
insert into City Values(4,'Patna')
insert into City Values(2,'Rajgir')
insert into City Values(2,'Nalanda')

create procedure PMP_GetState
AS
BEGIN
Select * from statee
END


create procedure PMP_GetCity
@stateid int
as
Begin
select * from City
where id=@stateid
end

take two dropdownlist
name as ddlstate and ddlcity
ddlstate autopostback =true
ddlcity collapse edit item add item text= Select and value =0
aspx.cs
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bind();
}
}
protected void Bind()
{
cls_PMPtables obj = new cls_PMPtables();

DataSet ds = obj.GetState();

if (ds != null)
{
if (ds.Tables[0].Rows.Count > 0)
{
ddlstate.DataSource = ds.Tables[0];
ddlstate.DataValueField = "id";
ddlstate.DataTextField = "namee";
ddlstate.DataBind();

}
}

System.Web.UI.WebControls.ListItem cmbItem;
cmbItem = new System.Web.UI.WebControls.ListItem("-Select-", "0");
ddlstate.Items.Insert(0, cmbItem);
ddlstate.SelectedIndex = 0;


}
protected void ddlstate_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlstate.SelectedIndex < 0)
return;
bindcity(Convert.ToInt32(ddlstate.SelectedItem.Value.Trim()));
}
private void bindcity(int stateid)
{
cls_PMPtables obj = new cls_PMPtables();
try
{
DataSet ds = obj.Getcity(stateid);
if (ds != null)
{
if (ds.Tables[0].Rows.Count > 0)
{
ddlcity.DataSource = ds.Tables[0];
ddlcity.DataTextField = "namee";
ddlcity.DataValueField = "id";
ddlcity.DataBind();
}
}
}
catch (Exception ex)
{
}
finally
{
obj = null;
}

}
}






Add new class file name as cls_PMPtables

public class cls_PMPtables
{
public SqlConnection sqlconn = new SqlConnection(ConfigurationManager.AppSettings["statecity"]);
SqlCommand cmd = new SqlCommand();
public cls_PMPtables()
{
//
// TODO: Add constructor logic here
//
}

public DataSet GetState()
{
DataSet ds = new DataSet();
try
{
if (sqlconn.State != ConnectionState.Open)
{
sqlconn.Open();
}

SqlCommand cmd = new SqlCommand();
cmd.CommandText = "PMP_GetState";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = sqlconn;
SqlDataAdapter sqlda = new SqlDataAdapter();
sqlda.SelectCommand = cmd;
sqlda.Fill(ds);
}
catch (Exception ex)
{
//Response.write(ex.Message);
}
finally
{
sqlconn.Close();
}
return ds;
}

public DataSet Getcity(int stateid)
{
//CREATE procedure PMP_GetGrantDonation_Type_byGD_Type_Id
//@GD_Type_Id int

DataSet ds = new DataSet();
try
{
if (sqlconn.State == ConnectionState.Closed)
{
sqlconn.Open();
}

SqlCommand cmd = new SqlCommand();
cmd.CommandText = "PMP_GetCity";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = sqlconn;
cmd.Parameters.Add("@stateid", stateid);

SqlDataAdapter sqlda = new SqlDataAdapter();
sqlda.SelectCommand = cmd;
sqlda.Fill(ds);
}
catch (Exception ex)
{
}
finally
{
sqlconn.Close();
}
return ds;
}


}

No comments:

Post a Comment