【发布时间】:2011-07-26 20:52:29
【问题描述】:
我在 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 都是 SalesParty 端的 0..1 多重性和另一端的 *。
我将 Entity Framework 4.1 与“MySQL Connector Net 6.3.7”库一起使用。我最初尝试了 6.4.x,但在它和实体框架之间遇到了一些其他问题,不得不回滚。
真正令人费解的是,我最近更换了笔记本电脑,而且在旧笔记本电脑上运行良好!旧的在 32 位处理器上运行 Windows 7,新的是 64 位。不确定这是否会影响使用不同的库,但这是我能想到的唯一其他变量。
【问题讨论】:
-
有趣...我已经尝试了 .Include("DomainSpecificObject") 与其他几个关联,但除了“InventoryReservation”之外,它们都失败了。有些具有相同的多样性,有些则不同。
标签: mysql linq-to-entities entity-framework-4.1