SavedQueryDataSource缓存/更改跟踪缓存无效问题

本文关键字:缓存 无效 问题 跟踪 SavedQueryDataSource | 更新日期: 2023-09-27 18:01:40

这是一个ASP。. NET数据源/网格中的样例应用程序(SDK提供的WebAppWalkthrough应用程序)

<crm:SavedQueryDataSource ID="EligiblePatients" SavedQueryName="Patients View" runat="server"  />
<asp:GridView id="EligiblePatientsGrid" DataSourceID="EligiblePatients" runat="server" />

因此,这将从CRM实例中保存的名为Patients View的查询中提取联系人。

我安装了Xrm Portal插件,并创建了一个Web Notification URL,如下面的步骤所示,以便在创建/删除/更新CRM中的实体时触发缓存失效,但没有执行。

为了使更新通过,我需要关闭用于在Visual Studio中运行应用程序的webdev进程,然后更改是可见的。

这真的很奇怪。如果我开始调试我的应用程序(假设本地应用程序池是第一次启动),我确实会看到来自CRM的实时数据。然后,如果我更改了CRM中的某些内容并刷新我的网页,我确实可以看到更改。

这是当我做同样的测试第二次,第三次,第四次,等等时间,然后更改永远不会显示在网页上,无论发生什么在CRM,除非我杀死应用程序池。

有什么想法吗?

SavedQueryDataSource缓存/更改跟踪缓存无效问题

在每次页面加载时重新创建上下文。处理器时间比内存(会话存储)便宜,而且更容易使用,特别是如果您无论如何都要从上下文重新加载更新。如果您以后遇到性能问题,那么请考虑缓存(以及由此带来的所有麻烦)。

成功了:

如何禁用CRM 2011 Xrm缓存?

我不知道我上面提到的过程是否也是它现在工作的部分原因。