Я использую Entity Framework в C # с серверной частью MySQL. Вот проблемный участок кода:
using (var entities = new myEntities()) {
Parties = new ObservableCollection<t_party>(
entities.SalesParties
.Include("SalesReps")
.Include("InventoryReservation")
.Include("InventoryReservation.InventoryAssignment")
.Include("InventoryReservation.InventoryAssignment.Inventory")
.ToList()
);
}
Когда код запускается, я получаю сообщение об ошибке: «Вызов« Read », когда устройство чтения данных закрыто, не является допустимой операцией». Интересно то, что если я удаляю .Include ("SalesReps"), он работает просто отлично. SalesReps и InventoryReservation имеют кратность 0..1 от конца SalesParty и * от другого конца.
Я использую Entity Framework 4.1 с библиотекой MySQL Connector Net 6.3.7. Сначала я попробовал 6.4.x, но столкнулся с некоторыми другими проблемами между ним и Entity Framework, и мне пришлось откатиться.
Поистине загадочно то, что я недавно сменил ноутбук, и на старом он работал нормально! Старый работал под управлением Windows 7 на 32-битном процессоре, новый 64-битный. Не уверен, повлияет ли это на использование разных библиотек, но это единственная другая переменная, о которой я могу подумать.