在某些情况下,我已经能够使用UpdateObject欺骗它来检测更改:
public UpdateOrderDescription(int userId)
{
var entities = new DatabaseEntities(new Uri("http://SomeServer/OrderService.svc")) { UsePostTunneling = true};
var order = (from o in entities.Orders where o.UserId == userId select o).Single();
order.Description = "Hello";
entities.UpdateObject(order);
entities.SaveChanges();
}
但是当使用导航属性使用多对多关系时,这不起作用,因为我无法在导航属性上执行UpdateObject。
答案 0 :(得分:1)
看一下这篇文章:http://msdn.microsoft.com/en-us/library/dd756361.aspx
简而言之,WCF DS的客户端库需要通知您要进行的更改。默认情况下,在上下文中使用UpdateObject,SetLink,AddLink和类似方法完成。