Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
13.09.2004, 23:48
|
|||
---|---|---|---|
Dve tablici v odnom gride |
|||
#18+
Zdrastvuyte! U menya voznikla problema c otobrajeniem informacii iz dvuh tablic v odnom DataGride. Nashel kod , no tolko dlya C , a mne nujno dlya VB.Net. Mojet kto pomojet. Spasibo vsem Kod: Такой вот способ... В базе данных есть две таблицы Persons и Departmentrs. В Persons содержится ID из табл Departmments. Задача:вытащить Department_Name (d_name) по его ID(d_id) Заливаем датасет из бд и связываем таблицы ключем. SqlDataAdapter da1 = new SqlDataAdapter("Select * from Persons", SqlConn); SqlDataAdapter da2 = new SqlDataAdapter("select * from Departments", SqlConn); ds = new DataSet("myDatSet"); da1.Fill(ds, "Pers"); da2.Fill(ds, "Dept"); ForeignKeyConstraint fk = new ForeignKeyConstraint("Pers_Dept", ds.Tables["Dept"].Columns["d_id"], ds.Tables["Pers"].Columns["d_id"]); //Устанавливаем первичный ключ ds.Tables["Pers"].Constraints.Add(fk); ds.Tables["Dept"].PrimaryKey = new DataColumn[]{ds.Tables["Dept"].Columns["d_Id"]}; dg.DataSource = ds.Tables["Pers"]; dg.DataBind(); Вот теперь нужно изпользовать событие ItemDataBound Interesuet danniy kod: private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item ) { Label d_id = (Label)e.Item.FindControl("d_id"); Label d_name = (Label)e.Item.FindControl("d_name"); DataRow dr = ds.Tables["Dept"].Rows.Find(d_id.Text); d_name.Text = dr["d_name"].ToString(); } } ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=17&mobile=1&tid=1354027]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
72ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 332ms |
total: | 501ms |
0 / 0 |