私はEF5コードファーストを使って私のモデルの一部を定義しています。あなたがチームと ユーザー間の多対多の関係がある見ることができるようにブリーズの多対多関係
public class Team { [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Team_Id { get; set; } [MaxLength(150)] public string TeamName { get; set; } public virtual ICollection<User> Users { get; set; } [public virtual ICollection<Role> Roles { get; set; } // 1 [Timestamp] public byte[] TimeStamp { get; set; } } public class User { [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int User_Id { get; set; } [MaxLength(150)] public string LoginName { get; set; } [MaxLength(150)] public string Nachname { get; set; } [MaxLength(150)] public string Vorname { get; set; } public virtual ICollection<Team> Teams { get; set; } public virtual ICollection<Role> Roles { get; set; } // 2 [Timestamp] public byte[] TimeStamp { get; set; } } public class Role { [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Role_Id { get; set; } [MaxLength(50)] public string RoleName { get; set; } [Timestamp] public byte[] TimeStamp { get; set; } }
:私は、多対多の関係でこれらの 3つのサンプルクラスを持っています。私はこれを数時間働かせようとしています。私はいつもJS 例外をVS 2012の "悪いナビのプロパティ"で例外を取得します。 で最初にそれは ユーザー/チームクラスのICollectionsチーム/ユーザーだと思った。問題は、2つのコール 1)と2)のように思われる。私はどちらか片方を取り除きます。名前を1つに変更し、両方のフィールドをアクティブに維持する は依然としてエラーをスローします。おそらく誰でも 何が起こっているアイデアを持っています。
感謝
この質問は、当社のIdeaBladeフォーラムでSirSmackalotにより投稿されました。私はBreeze Stack Overflowコミュニティに役立つと思うので、ここで質問と回答を再投稿しています。
多対多の実装を避けるようにアドバイスします。コンセプトはうまくいきますが、実際にはほとんど常に崩れています。私の経験では、マッピングテーブルは最終的に列を取得します。たぶんそれは、リンクの日付やuserId、または両者がどのように一緒に来たかを説明する他の事実かもしれません。その「ペイロード」を追加する瞬間に、多対多が崩れ、マッピング/リンクエンティティを明示的にする必要があります。私は、m-to-m ...コードに依存するすべてのコードを追跡するためにスクランブルする必要があります。私はいつも、最初に1対m +マッピングエンティティを作っておきたいと思っています。 – Ward
チームからすべてのユーザーを取得するために、このようなリンクエンティティでbreezeのクエリがどのように見えますか? – daniel
まだ何もこの上に何もない? – Adaptabi