我对DataContext感到困惑,我希望有人确认或评论。
简单来说,我认为DataContext是一个容器,可以在加载时填充实体。
e.g。我有两个名为Customers
和Orders
的实体。我现在声明一个新的DomainContext
var ctx = new MyWebServices.MyDomainContext();
我在Customers
加载DomainDataSource
,如下所示:
DomainDataSource ddsCustomer = new DomainDataSource();
ddsCustomer.context = ctx;
ddsCustomer.query = ctx.LoadCustomerQuery();
ddsCustomer.Load();
现在,如果我使用相同的域上下文
加载订单DomainDataSource ddsOrder = new DomainDataSource();
ddsCustomer.context = ctx;
ddsCustomer.query = ctx.LoadOrdersQuery();
ddsCustomer.Load();
在我提交更改ctx.SubmitChanges()
后,DomainContext是否会返回服务器并将所有更改提交给服务器,包括客户和订单?甚至新的记录也被添加并编辑到这两个实体?
我是Silverlight的新手,想要一个关于DataContext如何工作的坚定概念,我已经浏览了白皮书,但可能找不到我想要的答案。
答案 0 :(得分:0)
是的,myDataContext.SubmitChanges()
在已加载到DomainContext上的集合中的任何实体上调用受保护的Ria.Entity.AcceptChanges()方法。