Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Silverlight RIA服务中禁用DomainContext/DomainDataSource缓存_Silverlight_Wcf_Caching_Ria - Fatal编程技术网

在Silverlight RIA服务中禁用DomainContext/DomainDataSource缓存

在Silverlight RIA服务中禁用DomainContext/DomainDataSource缓存,silverlight,wcf,caching,ria,Silverlight,Wcf,Caching,Ria,我使用带有过滤器描述符的DomainDataSource,但似乎DomainDataSource(或DomainContext)正在缓存旧数据,而不是用数据库中的新数据替换它 <riacontrols:DomainDataSource AutoLoad="True" LoadSize="5" Name="employeeDomainDataSource" QueryName="G

我使用带有过滤器描述符的DomainDataSource,但似乎DomainDataSource(或DomainContext)正在缓存旧数据,而不是用数据库中的新数据替换它

<riacontrols:DomainDataSource
        AutoLoad="True"
        LoadSize="5"                        
        Name="employeeDomainDataSource"
        QueryName="GetEmployeeQuery" Width="0" DomainContext="{Binding EmployeeContext}">
        <riacontrols:DomainDataSource.FilterDescriptors>                
            <riacontrols:FilterDescriptor IsCaseSensitive="False" PropertyPath="Name" Operator="Contains" Value="{Binding ElementName=NameFilter, Path=Text}"/>
        </riacontrols:DomainDataSource.FilterDescriptors>
    </riacontrols:DomainDataSource>

我还有一个数据寻呼机控件

假设用户A和B加载数据。用户B在编辑模式下更改员工的姓名。用户A键入该新名称作为筛选器,将获取数据,但显示旧的(缓存的)名称。我使用了fiddler,我可以看到正确的数据是从数据库和Web服务返回的


是否有任何选项可以关闭此选项?

我认为您需要在数据上指定LoadOption


我记不清了,也找不到文档,但我相信您需要覆盖DomainDataSource上的LoadingData事件;并设置args.merge选项。请尝试“RefreshCurrent”。

您应该在加载方法中将LoadBehavior设置为RefreshCurrent: 这样地:
context.Load(查询,LoadBehavior.RefreshCurrent,loadOpt=>{},null)