Сущность Рамочная ассоциация в концептуальной модели отношений один ко многим - PullRequest
0 голосов
/ 01 февраля 2012

У меня есть две сущности CUSTOMER и ORDER .. существует отношение один ко многим от CUSTOMER к ORDER, где CustomerID является первичным ключом для клиента и внешним ключом в ORDER. Теперь я хочу добавить свойство имени клиента из сущности CUSTOMER в сущности ORDER... Я скопировал это свойство и вставил его в таблицу ORDER, добавил таблицу CUSTOMER и сопоставил это свойство с тем же свойством таблицы CUSTOMER.*

3024: проблема в отображении фрагментов, начинающихся со строки 239. Необходимо указать сопоставление для всех ключевых свойств (ORDER.OrderID) объекта EntitySet. ORDER

1 Ответ

0 голосов
/ 01 февраля 2012

Это невозможно при отображении. Таким способом нельзя добавить свойство из Customer таблицы в Order сущность. Отображение свойств из нескольких таблиц в одну и ту же сущность имеет очень строгие правила, и в этом случае это невозможно.

Вы можете указать имя клиента в своем классе Заказа, не определяя его в сопоставлении. Создайте частичную часть класса Order и добавьте пользовательское вычисляемое свойство (не сопоставленное):

public partial class Order
{
    public string CustomerName 
    {
        get 
        {
            // Customer is navigation property to Customer entity
            return Customer.Name;
        }
    }
}

Для этого потребуется загрузка Customer с помощью Order (полная загрузка) или с использованием отложенной загрузки. Также это свойство нельзя использовать в запросах Linq-to-entity.

...