ОК, поэтому у меня есть таблица/сущность клиента. У меня также есть медицинская таблица/сущность. И поскольку у моего Клиента может быть несколько медицинских записей, я создал разрешающую таблицу/объект под названием ClentMedial, который состоит из 3 атрибутов, ID, ClientID и MedicalID.C# Entity Framework 5 много для многих данных просмотра
Я понял, как создать ClientMedical записи при указании идентификатора явно используя следующий код:
ClientMedical cm = new ClientMedical();
var med = (from m in db.Medicals where m.Id == 1 select m).First();
cm.Client = client;
cm.Medical = med;
client.ClientMedicals.Add(cm);
db.SaveChanges();
Однако я не знаю, как перебрать Клиент ClientMedical коллекции для отображения состояния здоровья (Медицинский объект имеет атрибут условия). Я новичок в Entity Framework. У меня есть клиентская форма, в которой отображается вся информация о конкретном клиенте, что я хочу сделать, чтобы показать/добавить/удалить медицинские условия для конкретного клиента.
Прошу прощения, если это немного расплывчато, я попытался объяснить это как можно лучше.
EDIT:
был в состоянии получить доступ к данным, как это:
IQueryable<Medical> med =
from p in db.ClientMedicals
where p.Client.Id == client.Id
select p.Medical;
foreach (Medical m in med)
{
MessageBox.Show(m.Condition);
}
Если кто-то лучший способ пожалуйста сказать.
Это не сработало. Я получил следующую ошибку: «System.Linq.IQueryable» не содержит определения для «Include» и никакого метода расширения «Include», принимающего первый аргумент типа «System.Linq.IQueryable '(вам не хватает директивы using или ссылки на сборку?). Я думал, что EF полагает, что это упростит ха-ха. –
SnakeByte
с использованием System.Data.Entity; – Senaid
У меня уже было это. – SnakeByte