GrpSMK Ответов: 3

Как связать два значения столбцов в выпадающем списке


моя таблица имеет три столбца productid, productname, price

В выпадающем списке я хочу отобразить все productname-price из базы данных.

в выпадающем списке мне нужно вот так ниже

iphone-15000
oneplus-2000

все в столбце gridview.

Что я уже пробовал:

protected void gvdetail_RowDataBound(object sender, GridViewRowEventArgs e)
     {
         SqlConnection con1 = new SqlConnection(@"user id=sa;password=ssa;database=Mohan;data source=PCTH101\PCTH101");
         if (e.Row.RowType == DataControlRowType.DataRow)
         {
           con1.Open();
             var ddl = (DropDownList)e.Row.FindControl("DropDownList3");
             int productid = Convert.ToInt32(e.Row.Cells[0].Text);
             SqlCommand cmd = new SqlCommand("SELECT * from productinfo1", con1);
             SqlDataAdapter da = new SqlDataAdapter(cmd);
             DataSet ds = new DataSet();
             da.Fill(ds);
             con1.Close();
             ddl.DataSource = ds;
             ddl.DataTextField = "productname-price";
          //   ddl.DataTextField = "price";
             ddl.DataValueField = "productid";
             ddl.DataBind();
             ddl.Items.Insert(0, new ListItem("--Select--", "0"));
         }

     }

Graeme_Grant

ASP. Core, Asp.Net, Mvc, Winform, Wpf, UWP или Xamarin? DaGridView, GridView и т. д... Пожалуйста, будьте конкретны.

GrpSMK

Asp.net

GrpSMK

GridView в

3 Ответов

Рейтинг:
20

Karthik_Mahalingam

измените запрос

select  (productname + '-' + CAST( price as nvarchar(50)) ) as 'productname-price' , productid from productinfo1


Graeme_Grant

Именно то, что делает ссылка, которую я им дал.

GrpSMK

да, все работает нормально, спасибо.

Harshal Kale

Отлично!!

Рейтинг:
2

Graeme_Grant

Может быть, проще всего это сделать в sql-запросе-объединить два столбца в отображаемое значение: sql-объединение двух столбцов базы данных в один столбец результирующего набора-переполнение стека[^]


GrpSMK

нет мне нужны два значения столбцов из одной таблицы

Graeme_Grant

Итак, вы не хотите отображать два столбца таблицы БД в одном столбце вашей сетки?

Рейтинг:
1

GrpSMK

Этот код работает нормально....

SqlCommand cmd = new SqlCommand("select productid, productname + ' - ' + price as new from productinfo1", con1);
             SqlDataAdapter da = new SqlDataAdapter(cmd);
             DataSet ds = new DataSet();
             da.Fill(ds);
             con1.Close();
             ddl.DataSource = ds;
             ddl.DataTextField = "new";
             //   ddl.DataTextField = "price";
             ddl.DataValueField = "productid";
             ddl.DataBind();
             ddl.Items.Insert(0, new ListItem("--Select--", "0"));