اتصال DropDownList با استفاده از DataReader در Asp.Net

در این مقاله به نحوه اتصال DropDownList با استفاده از DataReader در Asp.Net می پردازیم

اتصال DropDownList با استفاده از DataReader در Asp.Net

در این مقاله به نحوه اتصال DropDownList با استفاده از DataReader در Asp.Net می پردازیم:

در ابتدا در پایگاه داده خود یک جدول به نام Customers به شکل زیر بسازید:

سپس مقداری رکورد در آن درج میکنیم:

یک پروژه جدید از نوع وب فرم بسازید سپس یک صفحه جدید به پروژه خود اضافه کرده و از جعبه ابزار یک DropDownList  به صفحه خود  اضافه کنید:


<asp:DropDownList ID = "ddlCustomers" runat="server">
</asp:DropDownList>

برای این مثال به فضای نام های زیر نیاز داریم:


using System.Data;
using System.Configuration;
using System.Data.SqlClient;

درون رویداد Page Load  صفحه DropDownList از جدول Customers پر میشود مقادیر ستون نام و   id از پایگاه داده توسط SqlDataReader خوانده میشوند  DataTextField وDataValueField نسبت داده می شوند که از خصوصیات کنترل DropDownList هستند

DataTextField  : مقادیری که برای ستون  DataTextField  تنظیم می شوند برای کاربر نمایش داده میشوند.

DataValueField : مقادیری که برای ستون  DataValueField تنظیم می شوند برای کاربر نمایش داده    نمی شوند معمولا ستون id یا ستونی که کلید اصلی می باشد به عنوان ارزش به منظور شناسایی منحصر به فرد  یک آیتم DropDownList .هنگامی که رکورد ها از پایگاه داده فراخوانی می شوند به طور پیش فرض یک آیتم در موقعیت اول قرار داده می شود:

protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
        using (SqlConnection con = new SqlConnection(constr))
        {
            using (SqlCommand cmd = new SqlCommand("SELECT CustomerId, Name FROM Customers"))
            {
                cmd.CommandType = CommandType.Text;
                cmd.Connection = con;
                con.Open();
                ddlCustomers.DataSource = cmd.ExecuteReader();
                ddlCustomers.DataTextField = "Name";
                ddlCustomers.DataValueField = "CustomerId";
                ddlCustomers.DataBind();
                con.Close();
            }
        }
        ddlCustomers.Items.Insert(0, new ListItem("--مشتری را انتخاب کنید--", "0"));
    }
}

فایل های ضمیمه