Подтвердить что ты не робот

В чем разница между навигационным свойством и Ассоциацией в EF?

Я использую EF4.

Надеюсь, мой вопрос не слишком тривиален:

What is the difference between a Navigation Property and an Association in EF?

Если бы вы могли дать мне простое объяснение с примером, то большое спасибо!

4b9b3361

Ответ 1

Связь - это определение отношения между двумя типами сущностей (ala - внешний ключ)

Навигационное свойство действительно является свойством, которое позволяет вам перемещаться с одного конца ассоциации на другой.

Изменить: извините, что вам нужен пример.

Взгляните на эту документацию по MS. Это делает его довольно понятным.

Свойства навигации

Типы ассоциаций

Чтобы наглядно представить свою документацию (само размещение изображений):

Association

PublishedBy и WrittenBy являются ассоциациями. Они связывают книгу/издателя и книгу/автора (внешние ключи от ala)

Navigation Property

Обратите внимание на Книги в объектах Publisher и Author. Это "свойство навигации" позволяет вам вернуться к объекту книги и получить его также. (Например, Author.Books.Title)

Надеюсь, что это объяснит!

Ответ 2

Я считаю, что Ассоциация действует как внешний ключ, а свойство Navigation позволяет вам "перемещаться" между связанными объектами в коде.

Ассоциация внешних ключей в Entity Framework 4

EDIT

Кроме того, похоже, что у вас нет свойства навигации без внешнего ключа (Ассоциации): Навигационное свойство без объявления внешнего ключа

Ответ 3

Свойства навигации отражают взаимосвязь между двумя объектами, а внешний ключ является одним из способов определения отношения между двумя таблицами или объектами в терминах EF.