Erstellen von Master/Detailbeziehungen

Hallo zusammen,

beschäftige mich gerade mit den Unterschieden des DB-Zugriffs für meine Webseite mit Hilfe von VisualStudio.Net2003! Habe ein Beispiel Master/Detailbeziehung in einem WindowsForm-Projekt ausprobiert: es werden 2 oleDbDatenadapter erstellt, die jeweils auf eine Tabelle zeigen, dann wird eine Beziehung generiert (foreignkey/primarykey) und ein DataSet erstellt. In einer Listbox wird die übergeordnete Tabelle angezeigt, in einem Grid die untergeordnete Tabelle. (1:n)
-> oleDbDataAdapter1.Fill(DataSet);
-> oleDbDataAdapter2.Fill(DataSet);
Klappt auch tiptop! Im DataGrid werden nur die Datensätze angezeigt, welche zu dem in der Listbox selektierten Item gehören.
Jetzt habe ich versucht die DataSets in einen WebService auszulagern (weil ich gern eine verteilte Anwendung erstellen möchte) und die Darstellung weiterhin in einer WindowsForm zu belassen ->später möchte ich das ganze dann noch in einer WebForm ausprobieren. Die Listbox mit den Autoren lässt sich ohne Probleme füllen, doch beim füllen des DataGrids kommt eine Fehlermeldung:

"System.Web.Services.Protocols.SoapException: Der Server konnte die Anforderung nicht verarbeiten. ---> System.Data.ConstraintException: Einschränkungen konnten nicht aktiviert werden. Mindestens eine Zeile enthält Werte die die Einschränkungen non-null, unique or foreign-key verletzen."

Das Programm steigt in dem Augenblick aus, wenn in der [WebMethod]-Methode oleDbDataAdapter1.Fill(ds); ausgeführt wird.

Da ich mich noch nicht lange mit ASP.NET beschäftige, verstehe ich den Fehler nicht...Ist es überhaupt sinnvoll in einer Webanwendung mit DataSets aus einem Webservice zu arbeiten oder sollte man jeden Select befehl per Hand mit DB-Zugriff programmieren?

Um eine kleine Hilfestellung wäre ich wirklich sehr dankbar!

Tschüssi
Kiki:)
 
Zurück