Mam kilka klas domeny, które wyglądają mniej więcej tak, że chcę modelować z Code First (w EF 4.3).Dlaczego klasy Code First wymagają właściwości nawigacyjnych?
public class Foo {
// ...
}
public class Bar {
// ...
public Foo Foo { get; set; }
}
public class Baz {
// ...
public Foo Foo { get; set; }
}
W każdym example widzę jednak, obcy przedmiot odniesienia są dodawane w klasie Foo
. Czy moja klasa Foo
może być agnostyczna dla klasy Bar
i Baz
, czy naprawdę muszę coś takiego zrobić?
public class Foo {
// ...
public virtual Bar { get; set; }
public virtual Baz { get; set; }
}
Według this answer zajęcia zrobić potrzebę posiadania właściwości nawigacyjnych. Jestem nowy w Code First, więc czy ktoś może wyjaśnić, dlaczego tak się dzieje? Czy istnieje sposób na uniknięcie zanieczyszczania mojej klasy Foo
w ten sposób za pomocą Fluent API?
Wydaje mi się dziwne, że Foo
powinien wiedzieć o każdej klasie, która z niego korzysta. Czy mój projekt jest po prostu w jakiś sposób wadliwy?
Dzięki, to wyjaśnić mój nieporozumienie. Pośpiesznie zinterpretowałem inną odpowiedź, mówiąc, że 'Foo' musi mieć właściwość nawigacji. – Eric