我如何填充下拉列表 [英] How can i populate dropdownlist

查看:69
本文介绍了我如何填充下拉列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我的模特如下



  public   class 角色
{
public int RoleID { get ; set ; }
public string RoleName { get ; set ; }
}





我在我的视图中有一个@ html.DropDown控制器。我在sqlserver中有一个表有两列RoleID和RoleName。我将此表中的数据检索到数据集中。如何使用此数据集填充下拉列表。如果我从此下拉列表中选择一个角色,我想将RoleID保存到另一个表dbo.user中。我怎样才能做到这一点。请帮帮我...





谢谢和问候

Kunjammu

解决方案

试试这个,..取asp下拉列表,.. 

private void BindBatch()
{
ddlBatch .Items.Clear();
DataSet dsBatch --------------------------------这是ur数据集
if(dsBatch! = null&& dsBatch.Tables.Count> 0&& dsBatch.Tables [0] .Rows.Count> 0)
{
ddlBatch.DataSource = dsBatch;
ddlBatch.DataTextField =RoleName;
ddlBatch.DataValueField =RoleID;
ddlBatch.DataBind();
}
ddlBatch.Items.Insert(0,Select);
}


并且在插入区域中你必须保存ddlBatch.SelectedValue


如果你解决问题,请接受答案。


我用过

 @ Html.DropDownListFor(model => model.User.RoleID,(IEnumerable< SelectListItem>)ViewData [Role])



在我的视图中



在控制器中



 public IEnumerable< SelectListItem>列出
{
get
{
UserDAL userDAL = new UserDAL();
DataSet ds = new DataSet();
int RoleID = Convert.ToInt32(Session [RoleID]。ToString());
ds = userDAL.UserRoleRetrieve(RoleID);
DataTable dt = ds.Tables [0];
List< SelectListItem> list = new List< SelectListItem>();
foreach(dt.Rows中的DataRow行)
{
list.Add(new SelectListItem
{
Value = Convert.ToString(row [RoleID]) ,
Text = Convert.ToString(row [RoleName]),
});
}
返回清单;
}
}









 SelectList selectList = new SelectList(List,  Value  Text); 
ViewData [ 角色] = selectList;


Hi,

I have a model like below

public class Role
    {
        public int RoleID { get; set; }
        public string RoleName { get; set; }
    }



and i have a @html.DropDown controller in my view. I have a table in sqlserver having two columns RoleID and RoleName. I retrieved the data from this table into a dataset. How can i populate the Dropdown list using this dataset. if i select a role from this dropdownlist, i want to save RoleID into another table dbo.user. How can i do that. Please Help me...


Thanks and Regards
Kunjammu

解决方案

try this one,..take asp dropdownlist,..

private void BindBatch()
        {
            ddlBatch.Items.Clear();
            DataSet dsBatch --------------------------------this is ur dataset 
            if (dsBatch != null && dsBatch.Tables.Count > 0 && dsBatch.Tables[0].Rows.Count > 0)
            {
                ddlBatch.DataSource = dsBatch;
                ddlBatch.DataTextField = "RoleName";
                ddlBatch.DataValueField = "RoleID";
                ddlBatch.DataBind();
            }
            ddlBatch.Items.Insert(0, "Select");
        }


and in inserting area u have to save ddlBatch.SelectedValue 


Accept as answer if solve you problem.


i used

@Html.DropDownListFor(model => model.User.RoleID, (IEnumerable<SelectListItem>)ViewData["Role"])


in my view

in controller

public IEnumerable<SelectListItem> List
        {
            get
            {
                UserDAL userDAL = new UserDAL();
                DataSet ds = new DataSet();
                int RoleID = Convert.ToInt32(Session["RoleID"].ToString());
                ds = userDAL.UserRoleRetrieve(RoleID);
                DataTable dt = ds.Tables[0];
                List<SelectListItem> list = new List<SelectListItem>();
                foreach (DataRow row in dt.Rows)
                {
                    list.Add(new SelectListItem
                    {
                        Value = Convert.ToString(row["RoleID"]),
                        Text = Convert.ToString(row["RoleName"]),
                    });
                }
                return list;
            }
        }



and

SelectList selectList = new SelectList(List, "Value", "Text");
            ViewData["Role"] = selectList;


这篇关于我如何填充下拉列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆