Entity framework 4 实体框架4中的组合问题:实体当前为只读

Entity framework 4 实体框架4中的组合问题:实体当前为只读,entity-framework-4,entity,composition,Entity Framework 4,Entity,Composition,使用WCF RIA服务和实体框架4 我有3个DTO:学校、州、区。 州DTO有一个由多个组成部分组成的地区财产。学校DTO拥有国家财产和地区协会 其想法是,当我们创建/更新学校时,我们还允许用户进入州和地区(可以是现有的或新的) 创建一个新的州和地区时,一切正常。但是,当我仅在现有状态内创建一个新的区域时,会出现以下错误:“此实体当前为只读。存在以下条件之一:已调用自定义方法、正在进行提交操作或实体类型不支持编辑操作”我今天遇到了这个问题,并确定我的错误是由错误消息中描述的第二个问题引起的:“提

使用WCF RIA服务和实体框架4

我有3个DTO:学校、州、区。 州DTO有一个由多个组成部分组成的地区财产。学校DTO拥有国家财产和地区协会

其想法是,当我们创建/更新学校时,我们还允许用户进入州和地区(可以是现有的或新的)


创建一个新的州和地区时,一切正常。但是,当我仅在现有状态内创建一个新的区域时,会出现以下错误:“此实体当前为只读。存在以下条件之一:已调用自定义方法、正在进行提交操作或实体类型不支持编辑操作”

我今天遇到了这个问题,并确定我的错误是由错误消息中描述的第二个问题引起的:“提交操作正在进行。”

这是我的错误的代码:

dim c as new Car()
myContext.Cars.add(c)
myContext.SubmitChanges()
c.Color = "Red"
请注意,在SubmitChanges调用之后,我错误地更改了实体。虽然SubmitChanges发生在我修改实体之前,但SubmitChanges是异步发生的,因此不能保证在我修改实体之前提交更改

以下是更正后的代码:

dim c as new Car()
myContext.Cars.add(c)
c.Color = "Red"
myContext.SubmitChanges()

你有什么收获吗?我得到了同样的错误,除了它只发生很少,很难重现。我希望我能想出一个好方法来调试这个。。。