2011-07-18 23 views
1

私はプロジェクトでLINQ to SQLを使用しています。私は、DataContext.CreateDatabase()メソッドを使用してデータベースを作成しています。Linq to Sqlデータベースの外部キー問題を作成します。

OK

他のテーブルがFKとしてこのIDを参照しているとして、IDを持つ1つのマスターテーブルがあります。 更新と削除の役割をFKのカスケードに設定しました。したがって、マスターテーブルのレコードが削除されると、すべての参照レコードがすべての子テーブルから自動的に削除されます。

私はデータベースを削除し、起動時にデータベースの存在をチェックするアプリケーションを起動します。データベースが正常に作成されます。しかし、問題は作成されたFKにあります。アップデートや役割を削除するには、に、すべてのFKのアップデートを変更し、誰もがこの問題に直面してい手動カスケードに

を仕様を削除するので、私は持っているこののアクションなし代わりに、カスケードの .. を設定されていませんか?解決策は何ですか?

答えて

0

DeleteOnNull=trueを使用して、関連付けの削除を実行できます。この削除は、C#のコードではなく、データベースに行われているようDeleteOnNullが削除にカスケードと全く同じものではないことを

注 - 詳細http://blogs.msdn.com/b/dinesh.kulkarni/archive/2008/05/11/linq-to-sql-tips-4-use-deleteonnull-if-you-want-to-delete-object-with-null-fk.aspx

ために、このブログを参照してください
関連する問題