DYNAMICALLY BIND DROPDOWNLIST FROM DATABASE MVC
FIRST CREATE A CLASS BUSSINESSDATALAYER
CREATE THE TABLE FOR DROPDOWNLIST FROM WHICH dropdownlist list will be fetched
eg- tblwork_nts
parameters-
NT_SLNO int Unchecked
NT_ID Unchecked
NT_NAME nvarchar(MAX) Checked
NT_ADMIN nvarchar(10) Checked
DECLARE A DATASET METHOD IN THAT FOR FETCHING
1.
public DataSet Bind2DDL()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString);
SqlCommand cmd = new SqlCommand("select * from tblwork_nts", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
2. CREATE CONTROLLER eg-NTF
DECLARE A METHOD IN THAT
eg-
public ActionResult bindntfworkddl()
{
BussinessDataLayer bdl = new BussinessDataLayer();
DataSet ds = bdl.Bind2DDL();
ViewBag.fname = ds.Tables[0];
List<SelectListItem> item = new List<SelectListItem>();
foreach (DataRow dr in ViewBag.fname.Rows)
{
item.Add(new SelectListItem { Text = @dr["NT_NAME"].ToString(), Value = @dr["NT_NAME"].ToString() });
}
ViewBag.NT_NAME = item;
return View();
}
3.then call this method in both HTTPPOST AND HTTPGET
4. THEN IN VIEW WRITE THE FOLLOWING CODE IN THE ROW OF DROPDOWNLIST
<td>
Select work type
</td>
<td>
@Html.DropDownList("NT_NAME","select")
</td>
Note here NT_NAME will contain your selected dropdownlist value
eg- ntf.NSF_WORK = fc["NT_NAME"].ToString();
MAKE SURE YOU CALL bindntfworkddl() METHOD IN BOTH GET AND SET METHOD IN CONTROLLER
THATS ALL
THANKS FOR READING
No comments:
Post a Comment