EF4.1 Code First, свойство навигации по нескольким объединениям сопоставления - PullRequest
0 голосов
/ 04 августа 2011

В SQL у меня есть отношение 1: 1, определенное между двумя таблицами, которые связаны двумя таблицами сопоставления, всего четыре.Я не имею никакого влияния на схему базы данных.

Я хотел бы отразить это в моей модели Code First, чтобы я мог сказать Foo.Bar и Bar.Foo, а не Foo.Mapping1.Mapping2.Bar (или аналогичный).Возможно ли это с помощью Fluent API?Я знаю, что вы можете указать отношение многие ко многим, используя конструктор, который приводит к Foo.Bars и Bar.Foos, так что, надеюсь, это возможно.

1 Ответ

0 голосов
/ 10 августа 2011

Я не знаю, что вы можете сопоставить его с Fluent API, но я знаю, что вы можете создать класс расширения и создать расширение для обработки отображения следующим образом:

public static class FooExtension
{
     public static Bar Bar(this Foo)
     {
         var bar = Foo.Mapping1.Mapping2.Bar;

         return bar; 
     }
}

Тогда вы бы вызвали метод расширения

var foosBar = Foo.Bar()
...