Vă mulțumim pentru susținere

XSD DataSets și ignorarea cheilor externe

Am o setare destul de standard de tabel într-o aplicație curentă utilizând .NET XSD DataSet și TableAdapter . Tabelul meu contracte constă dintr-o informație standard a contractului, cu o coloană pentru departamentul principal . Această coloană este o cheie străină în tabelul meu Departments , în care stochez codul de bază , id , notes . Toate acestea sunt setate și funcționează în SQL Server .

Când folosesc instrumentul XSD, pot glisa simultan ambele tabele și detectează / creează automat cheia străină pe care o am între aceste două tabele. Acest lucru funcționează minunat când sunt pe pagina mea principală și văd datele contractului.

Totuși, când mă duc la pagina mea administrativă pentru a modifica datele departamentului. De obicei, fac ceva de genul:

Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()

taDepartment.Fill(dtDepartment)

Cu toate acestea, în acest moment o excepție este aruncată spunând că există o referință de cheie străină ruptă aici, cred că, deoarece nu am codul Contract DataTable umplut.

Cum pot remedia această problemă? Știu că pot elimina cheia străină din XSD pentru a face lucrurile să funcționeze bine, dar având verificarea integrității suplimentare acolo și având schema XSD care se potrivește cu schema SQL din baza de date este bună.

0
adăugat editat

1 răspunsuri

Puteți încerca să dezactivați verificarea constrângerilor în DataSet (este în proprietățile sale) sau să modificați proprietățile acelei relații și să schimbați cheia la o referință simplă - până la dvs.

0
adăugat