データベースに、Linq2Sqlエンティティを作成しようとしているテーブルが2つあります。そここれよりも彼らに多くのですが、これは彼らが降りてくるものを、本質的である:Linq2Sql:両方のテーブルにプライマリキーを持たない外部キー関係のエンティティを作成できますか?
Rooms UserActivity -------- -------- RoomID ActivityID RoomID (foreign key on Rooms.RoomID)
UserActivity
表は、基本的に、ユーザは部屋のテーブルに対して実行するアクションのためだけのログです。
テーブルは、取られたアクションのロギングにのみ使用されているため、Linq2SqlマッパーがUserActivity
を作成することを拒否するまで、元々テーブルのプライマリキーを作成することはあまり意味がありませんでした。 LinqエンティティのRoom
エンティティの一部です。これらの警告は、私の中でActivityID
列を作成するために私を導い
Warning 1 DBML1062: The Type attribute 'UserActivity' of the Association element 'Room_UserActivity' of the Type element 'Room' does not have a primary key. No code will be generated for the association.
Warning 2 DBML1011: The Type element 'UserActivity' contains the Association element 'Room_UserActivity' but does not have a primary key. No code will be generated for the association.
:私はVisual Studioのデザイナでエンティティを設定すると、私はこれらの2回の警告を得ました上記の表を参照してください。
Linq2Sqlが両方のテーブルにプライマリキーを持たずにエンティティ間の関係を作成できるようにする方法があるかどうかを知りたいと思います。 UserActivity
テーブルに主キーがない場合でも、エンティティは作成できますが、関係は生成されません。
これは可能ですか、一般的な習慣として、自分のテーブルに常にプライマリキーがあることを確認する必要がありますか?