Izbornik Zatvoriti

C# .NET – Definicija Master – Detail veze dve tabele

Podešavanje prikaza master/detail vezu dve tabele u .NET nije baš očigledno nekome ko je navikao na neku drugu platformu. Zato, evo kratkog primera kako to podesiti :

//
//
// kreiraj dataset
ds = new DataSet();

//
//
// kreiraj master tabelu
DataTable dtMaster = new DataTable();
dtMaster.Columns.Add ("id_master", typeof (string));
dtMaster.Columns.Add ("description", typeof (string));

//
//
// napuni je podacima
dtMaster.Rows.Add ("1", "prvi");
dtMaster.Rows.Add ("2", "drugi");
dtMaster.Rows.Add ("3", "treci");
dtMaster.Rows.Add ("4", "cetvrti");

//
//
// podesi primarni kljuc
DataColumn[] MasterPrimaryKeyColumns = new DataColumn[1];
MasterPrimaryKeyColumns[0] = dtMaster.Columns["id_master"];
dtMaster.PrimaryKey = MasterPrimaryKeyColumns;

//
//
// dodaj tabelu u DataSet
ds.Tables.Add (dtMaster);

//
//
// kreiraj detail tabelu
DataTable dtDetail = new DataTable();
dtDetail.Columns.Add("id_detail",
 […]
[ ... vidi ceo članak ... ]

C# .NET – ComboBox Lookup from Detail Table

Ovo moram da zabeležim, jer mi je neverovatno da sam potrošio sate i sate da bih iskopao kako da napravim tako prostu i banalnu stvar.

Imate tabele MasterTable i DetailTable. Tabela MasterTable ima polje detail_id preko koga je povezano sa tabelom DetailTable. Tabela DetailTable ima samo dva polja: detail_id i description.

Hoćete na masci da imate ComboBox koji će prikazati listu vrednosti iz tabele DetailTable tako što će prikazati vrednosti polja description a kada se izabere određena vrednost u MasterTable.detail_id upisati vrednost polja DetailTable.detail_id.

Ako krenete intuitivno sigurno nećete nigde stići. Dokumentacija na Majkrosoft sajtu je bedna i neupotrebljiva, a ako pokušate da na Internetu nađete neki primer kako ovo podesiti naići ćete samo na polovične primere koji ne rade. […]
[ ... vidi ceo članak ... ]