我有两个实体。订单和OrderLine。一个订单可以有许多OrderLines。 每个实体都通过自己的RIA服务公开。他们的Read方法返回IEnumerable和IEnumerable。 LightSwitch正确读取服务和创建的数据源。 当我为Order创建List Detail屏幕并添加查询作为OrderLines的数据项时,读取操作运行良好,但OrderLines控件总是只读。
所以我尝试将两个实体及其逻辑放入一个域服务中(我认为这不是正确的方法,因为我知道LS不会在一个容器中创建两个实体之间的关系)。我以相同的方式创建了相同的屏幕(ListDetail for Order并手动为OrderLines添加查询)。现在我甚至可以编辑我的OrderLines。
请有人确认我的经验证明“所有应在一个屏幕上可编辑的实体必须通过相同的RIA服务公开吗?”
谢谢。答案 0 :(得分:0)
如果你将这样的代码用于_InitializeDataWorkspace方法,你可以使它工作:
saveChangesTo.Add(this.DataWorkspace.MyOtherDataSource
请参阅: