
Είμαι χρησιμοποιώντας ASP.NET Dynamic Data για ένα έργο και έχω έναν πίνακα που έχει δύο ξεχωριστά πεδία που συνδέονται με τον ίδιο ξένο κλειδί σε ένα διαφορετικό τραπέζι.


Αυτή η σχέση λειτουργεί καλά στον SQL Server.


Ωστόσο, στο μοντέλο LINQ σε SQL στο μοντέλο ASP.NET Dynamic Data, η σχέση μόνο το πρώτο πεδίο αντανακλάται. Αν θα προσπαθήσετε να προσθέσετε το δεύτερο σχέση με μη αυτόματο τρόπο, καταγγέλλει ότι «δεν είναι δυνατή η δημιουργία σύνδεσης“ForeignTable\_BaseTable”. Το ίδιο ακίνητο είναι εισηγμένη περισσότερο από μία φορά:“Id”.»


[Αυτό το άρθρο MSDN](http://msdn.microsoft.com/en-us/library/bb629292.aspx) δίνει τέτοιες χρήσιμες συμβουλές:


* Εξετάστε το μήνυμα και να σημειώσετε το ακίνητο που καθορίζεται στο μήνυμα.
* Κάντε κλικ στο OK για να κλείσετε το πλαίσιο μηνύματος.
* Ελέγξτε τις Ιδιότητες σύνδεσης και αφαιρέστε τις διπλές καταχωρήσεις.
* Κάντε κλικ στο κουμπί OK.

 
Χρησιμοποιώντας ASP.NET Dynamic Data / LINQ to SQL, πώς έχετε δύο πεδία του πίνακα έχουν σχέση με την ίδια ξένο κλειδί;
=======================================================================================================================



Η λύση είναι να διαγράψετε και να προσθέσετε ξανά τους δύο πίνακες με το LINQ to SQL διάγραμμα, όχι μόνο αυτό που έχετε προσθέσει το δεύτερο πεδίο και τα πλήκτρα για να.


Εναλλακτικά, φαίνεται μπορείτε να κάνετε δύο ενώσεις χρησιμοποιώντας το LINQ to SQL interface - απλά μην προσπαθήσετε και να τις ενώσετε σε μία ενιαία ένωση.

 