您的位置:首页 > 编程语言 > C#

c#大圣之路笔记——绑定dropdown数据的基本方法

2016-02-17 12:15 393 查看
//////通过DataTable 绑定数据

BindRegion();

private void BindRegion()
{
// ddlRgn.DataSource = Location.GetRegionByWWID(System.Configuration.ConfigurationManager.AppSettings["DSN"].DecodeBase64(), ViewState["WWID"].ToString().ToHtmlEncode());
string type = "region";
ddlRgn.DataSource = BindData(ddlQuarter.SelectedValue,string.Empty,string.Empty,string.Empty,string.Empty, type);
ddlRgn.DataValueField = "Key";
ddlRgn.DataTextField = "Value";
ddlRgn.DataBind();
ddlRgn.Items.Insert(0, new ListItem("ALL", "ALL"));
}

private  DataTable BindData(string quater, string rgn, string subrgn, string grid,string city, string type)
{
DataTable ddt = new DataTable();

SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["DSN"].DecodeBase64());
SqlCommand cmd = new SqlCommand();
SqlDataAdapter da = new SqlDataAdapter();

try
{
cmd.Connection = conn;
cmd.CommandText = "region_subregion_grid_pref_city_by_wwid_quarter";
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@yyyyqq", quater);
if (ddlRgn.SelectedValue==string.Empty || ddlRgn.SelectedValue=="ALL")
{
cmd.Parameters.AddWithValue("@rgn_cd",DBNull.Value);
}else
{
cmd.Parameters.AddWithValue("@rgn_cd", rgn);
}
cmd.Parameters.AddWithValue("@subrgn_cd",DBNull.Value);
if (ddlGrid.SelectedValue==string.Empty || ddlGrid.SelectedValue=="ALL")
{
cmd.Parameters.AddWithValue("@grid_cd", DBNull.Value);
}
else
{
cmd.Parameters.AddWithValue("@grid_cd", grid);
}
cmd.Parameters.AddWithValue("@pref_cd", DBNull.Value);
if (ddlCity.SelectedValue==string.Empty || ddlCity.SelectedValue=="ALL")
{
cmd.Parameters.AddWithValue("@city_id", DBNull.Value);
}
else
{
cmd.Parameters.AddWithValue("@city_id", city);
}
cmd.Parameters.AddWithValue("@wwid", txtWWID.Text);
cmd.Parameters.AddWithValue("@type", type);
da.SelectCommand = cmd;
da.Fill(ddt);
}
catch //(Exception)
{
ddt = null;
}
finally
{
conn.Close();
da.Dispose();
cmd.Dispose();
}
return ddt;
}

//////通过 Dictionary 绑定数据
private void BindRegion()
5         {
6             ddlRgn.DataSource = Location.GetRegionByWWID(System.Configuration.ConfigurationManager.AppSettings["DSN"].DecodeBase64(), ViewState["WWID"].ToString().ToHtmlEncode());
7             string type = "region";
8            // ddlRgn.DataSource = BindData(ddlQuarter.SelectedValue,string.Empty,string.Empty,string.Empty,string.Empty, type);
9             ddlRgn.DataValueField = "Key";
10             ddlRgn.DataTextField = "Value";
11             ddlRgn.DataBind();
12             ddlRgn.Items.Insert(0, new ListItem("ALL", "ALL"));
13         }
public static Dictionary<string, string> GetRegionByWWID(string connectionString, string wwId)
{
SqlParameter[] paraList = new[]
{
new SqlParameter("@rgn_cd", DBNull.Value),
new SqlParameter("@subrgn_cd", DBNull.Value),
new SqlParameter("@grid_cd", DBNull.Value),
new SqlParameter("@pref_cd", DBNull.Value),
new SqlParameter("@city_id", DBNull.Value),
new SqlParameter("@wwid", wwId),
new SqlParameter("@type", "region")
};
Dictionary<string, string> list = new Dictionary<string, string>();
using (IDataReader reader = SqlHelper.ExecuteReader(connectionString, "region_subregion_grid_pref_city_by_wwid", paraList))
{
while (reader.Read())
{
list.Add(reader["rgn_cd"].ToString().Trim(), reader["rgn_nm"].ToString().Trim());
}
}
return list;
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: