同様の状況に:How to add several dependent records with LINQ2SQL (これは論理的なようだが、それは私のために動作しません)Linq2Sql挿入レコード関連テーブルへ
ASP.NET MVC + Linq2SQL
私は挑戦と呼ばれる2つのテーブルを持っており、参加者。
- チャレンジ{challengeId、 ChallengeDesc、applicantId、 respondantId}
- 参加{participantId、姓、氏名}
参加者と課題の間に1対多の関係が存在する - 1各キーのための(applicantId、RespondantId)。
私は新しい応募者と応募者とチャレンジを作成するためにすべてのフィールドを収集する入力フォームを持っています。データバインダーは、すべてのフィールドをチャレンジにバインドし、子の参加者を正しくバインドしますが、Linq2Sqlによって作成された構造をブラウズすると、参加者オブジェクトの名前はチャレンジオブジェクトのキー名と一致しません(applicantIdはParticipantオブジェクトと一致し、respondantIdはParticipant1と一致します)。オブジェクト)。
私は、InsertOnSubmit(aChallenge)の後にSubmitChanges()をしようとすると、Linq2Sqlからforeign_key制約の検証メッセージが返されます。 SQL Server Profilerでは、参加者が正しく作成されていることがわかりますが、チャレンジが保存されると、これらの新しく挿入された参加者のIDはチャレンジオブジェクトに設定されていないため、システムは外部キー違反メッセージをスローします。
どのように私はこれを乗り越えますか?