We have 3 Tables:
Main Table Customers
Child Table Orders
GrandChild Table OrderDetails
There are Foreign Relationships between the Customers and Orders Table and Between the Oders and OrderDetails Table
We have a ListBox whose ItemsSource is Customers i.e. The Main Table
We have a DataGrid whose ItesSource has been set to the Relation Between Customers and Orders i.e.
We have another DataGrid whose ItesSource has been set to the Relation Between Orders and OrderDetails i.e.
if the Order table record is saved, the foreign key gets generated correctly when adding a new record to the OrderDetails Table using the NewItemRow in the DataGrid
But if the record in the Order Table is a new record (i.e. not yet saved), the foregin key when addinmg a New Orderdetails record is not generated correctly and you get an Exception that first displays
There is no source code available for the current location.
ForeignKeyConstraint FK_OrderDetails_Orders requires the child key values (-1) to exist in the parent table.
Even after this operation, now that the Orders table has been saved and its actual identity has been retreived from the Database, if you re-try to add the OrderDetails record again, you still get the -1 as the
foreign key. If you close the application and restart it, and then add a new OrderDetails record, then you get the correct foreign key.
Any ideas of how to solve this problem?