como juntar o conjunto de dados

Amigos de Hai

Eu sou um conjunto de dados como este ds como três colunas isto:

Tblkey Empkey Empkey Empname

T101 E10 Natraj
T102 E11 Siva
T103 E14 ganesh

estou a ter outro conjunto de dados ds1 apenas duas colunas como esta:

Empkey Empname
E10 karthi
E11 thriu
E13 maran

quero juntar o conjunto de dados e verificar os valores ao verificar se o ds não está a ter E13, deverá ligar-se e mostrar o resultado como este ds

Tblkey Empkey Empkey Empname

T101 E10 Natraj
T102 E11 Siva
T103 E14 ganesh
E13 maran
aqui o' tblkey ' vem vazio
como fazer:

Author: Mark Hurd, 2010-08-25

1 answers

Para reproduzir inteiramente o seu exemplo:

DataSet ds1 = new DataSet();
DataSet ds2 = new DataSet();

ds1.Tables.Add(new DataTable());
ds2.Tables.Add(new DataTable());

ds1.Tables[0].Columns.Add("tblkey");
ds1.Tables[0].Columns.Add("empkey");
ds1.Tables[0].Columns.Add("empname");

ds2.Tables[0].Columns.Add("empkey");
ds2.Tables[0].Columns.Add("empname");

ds1.Tables[0].Rows.Add("T101", "E10", "Natraj");
ds1.Tables[0].Rows.Add("T102", "E11", "Siva");
ds1.Tables[0].Rows.Add("T103", "E14", "ganesh");

ds2.Tables[0].Rows.Add("E10", "karthi");
ds2.Tables[0].Rows.Add("E11", "thriu");
ds2.Tables[0].Rows.Add("E13", "maran");

// primary keys must be set in order for the merge to work
ds1.Tables[0].PrimaryKey = new DataColumn[] { ds1.Tables[0].Columns["empkey"] };
ds2.Tables[0].PrimaryKey = new DataColumn[] { ds2.Tables[0].Columns["empkey"] };

// this is the critical line
ds1.Merge(ds2, true, MissingSchemaAction.Add);

A adição do esquema em falta (neste caso, a coluna tblkey) é conseguida definindo correctamente o terceiro parâmetro.

 3
Author: Bradley Smith, 2010-08-25 14:48:53