2011-06-03 50 views
0

我在更新相同上下文中的记录时遇到问题。即使更改属性,EF4对象状态也不会更改为新添加的行

Ex情况如下。

我有一个数据输入并从中添加一条记录。插入是在事务范围内发生的。

我从相同的表单添加记录并尝试更改值。它dosnt工作。当我看到对象状态时,即使属性值发生更改也不会改变。

更新将在我重新启动应用程序并更改值后正常工作。之后,所有影响正确的变化。

这种情况只发生在用上下文插入的记录中。

SaveChages()在没有任何参数的情况下被调用。

任何机构都有这个问题的想法?

DineshNS

+0

这是一个网页或应用程序取胜?发布一些代码是你添加你的第一个和第二个实体 – Eranga 2011-06-03 00:43:10

+0

这是一个Windows应用程序。 – DineshNS 2011-06-03 07:30:21

回答

0

你可以试试这个:

ObjectContext.ApplyCurrentValues("EntitySetName", currentEntity); 

如:ObjectContext.ApplyCurrentValues("Orders", Order);

+0

嗨谢谢你的回复。如果我们明确地做到这一点,它将会奏效我的问题是我们需要明确设置它吗?更改一个属性值是不够的? – DineshNS 2011-06-03 07:28:30

+0

您的建议有效。每当我们更新记录时,我们是否需要这样做? – DineshNS 2011-06-03 16:46:21

+0

正如在下面的链接中提到的,您需要这样做每次ur实体都在ObjectContext之外更新:http://msdn.microsoft.com/en-us/library/dd487246.aspx。 – Akhil 2011-06-03 16:49:56