1

私は2つのエンティティを持っています:

public class School
{
    public int Id { get; set; }
    ...
    public virtual ICollection<Seminar> Seminars { get; set; }
}

public class Seminar
{
    public int Id { get; set; }
    ...
    public virtual ICollection<School> Schools { get; set; }

    public virtual ICollection<Price> Prices { get; set; } // wrong??
}

public class Price
{
    public int Id { get; set; }

    public decimal Value { get; set; }

    public virtual School School { get; set; }

    public virtual Seminar Seminar { get; set; }
}

次のようなものを取得するために「価格」プロパティをマップする方法:

var priceOfSomeSeminar = someSchool.Seminars[0].Price

出来ますか?だから、Fluent API modelBuilder 関係の確立に助けが必要だと思う...

4

1 に答える 1

1

ICollection にはインデクサーがないため、配列構文を使用することはできません。ただし、それを IEnumerable に変換してから、それを List に変換して、インデックスを作成することはできます。

しかし、いいえ、正しいセマンティクスを使用しているので、これはうまくいくはずです。流暢な API を使用する必要はありません。

間違いがあると思いますが、Price には School メンバーが必要ではありません。価格と学校の間に直接的な関係はありません。

于 2013-01-08T17:43:49.907 に答える