Windows phone 7 wp7 odata v2 dataservicestate还原方法在实体具有dataservicecollection属性时引发异常

Windows phone 7 wp7 odata v2 dataservicestate还原方法在实体具有dataservicecollection属性时引发异常,windows-phone-7,odata,wcf-data-services,Windows Phone 7,Odata,Wcf Data Services,我有一个使用ODataV2库和DataServiceState类的WP7应用程序,我能够调用DataServiceState.Save方法在逻辑删除期间存储DataServiceCollection。我还可以调用DataServiceState.Restore方法并成功还原已保存的DataServiceCollection 当已保存的DataServiceCollection类型包含一个或多个已加载/扩展的集合属性时,会出现问题 如果我不展开这些属性(使用Entities.BeginLoadPr

我有一个使用ODataV2库和DataServiceState类的WP7应用程序,我能够调用DataServiceState.Save方法在逻辑删除期间存储DataServiceCollection。我还可以调用DataServiceState.Restore方法并成功还原已保存的DataServiceCollection

当已保存的DataServiceCollection类型包含一个或多个已加载/扩展的集合属性时,会出现问题

如果我不展开这些属性(使用Entities.BeginLoadProperty方法),它就可以正常工作。但是,如果我展开一个或多个属性,当我尝试恢复集合时,会出现以下异常

无法将项目添加到集合中。当数据服务集合中的项目
由DataServiceContext跟踪,在项目加载到集合之前,无法添加新项目。

不确定我遗漏了什么-DataServiceState类应该解决尝试反序列化ODATA DataServiceCollections的问题-这似乎工作了一个级别,但一旦达到两个级别,就会抛出异常

谢谢
Michael

根据这篇文章:用于WP7的ODATA库在当前版本中不支持$expand选项,他们计划在下一版本中更好地支持逻辑删除功能。

那么,对于WP7/ODATA/逻辑删除功能和具有集合属性的对象,是否有推荐的方法?ODATA团队不应该吹嘘DataServiceState简化了数据服务上下文,而不提及这个“巨大的”警告