Создание отношений между двумя таблицами с использованием Entity Framework - PullRequest
0 голосов
/ 10 августа 2011

Я работаю над некоторыми методами CRUD для веб-приложения.Я использую Entity Framework с SQL Server 2008. В частности, у меня есть две таблицы, которые связаны с помощью таблицы перекрестных ссылок.Это в следующем формате:

  • Таблица Tbl_Plan
    • PlanId
    • PlanNm
    • Active
  • Таблица Tbl_Person
    • PersonId
    • PersonNm
    • PersonData
  • Таблица внешних ссылок Xref_PersonPlan
    • PersonId
    • PersonNm

Теперь, когда я создаю новый план, у меня естьпытался связать два вместе.Я не уверен как.Я знаю, что это как-то связано со ссылками на отношения или их созданием.

Таблицы настроены правильно, потому что я могу просто извлекать данные, как только они созданы (т.е. мои записи в SQL Server), но я могуссылка, где я в тупике.Я попробовал следующее:

using (Entities context = new Entities())
{
// TblPlan plan has already been instantiated
plan.TblPersons.Add(person);

context.AddToTblPlans(plan);

context.SaveChanges();

Но очевидно, что .Add() не то, что я ищу .... помощь?

Ответы [ 2 ]

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

Короткий ответ: отношения «многие ко многим» не поддерживаются в LINQ to SQL так же, как в Entity Framework и других ORM, и вам придется самостоятельно реализовать желаемое поведение.

Взгляните на эту статью. Описывает подход, который должен работать для вас.

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

Кто-то только что указал мне в правильном направлении.Я должен был ждать еще десять минут.Мне не хватало .AttachTo () - мне нужно было присоединить ссылку к контексту перед добавлением, так как он вызывал InvalidArgumentException.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...