首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否有OrganizationService连接保持连接设置

是否有OrganizationService连接保持连接设置
EN

Stack Overflow用户
提问于 2014-11-26 16:32:06
回答 1查看 1.7K关注 0票数 1

我有一个Web API项目,它连接到CRM 2011实例以收集一些数据。一旦创建了来自运行Web API项目的服务器的初始连接,应用程序就可以可靠地运行,并在可接受的时间内返回数据。

问题是,如果由于IIS关闭了该连接而需要重新创建该连接( IIS有时只会在10-20秒内关闭该连接),正在浏览UI (调用Web API项目)的用户可能会在那里等待10-15秒,然后才能刷新网格。

我认为建立连接需要相当长的时间,因为在web服务器(运行Web API的服务器)和CRM 2011服务器之间有一个ISA服务器。

我已经测试过,通过在web服务器上启动IE并简单地浏览CRM实例,需要很长时间才能重新建立连接。一旦建立了连接,就会非常快。如果我让IE等待一分钟,刷新一个网格,10-15秒的等待时间。

我知道可以在web.config中配置一些缓存,但根据我的经验,这会导致这样的问题:在缓存刷新之前,浏览UI (由Web API应用程序提供)的用户在很长一段时间内不能准确地看到我们的CRM实例中保存的实际数据。

所以我只是想看看是否有一种方法可以延长运行web API项目的Web服务器和CRM实例之间的连接的生命周期。

是否可以从web.config文件中执行此操作?下面是目前我的配置文件的相关部分:

代码语言:javascript
运行
AI代码解释
复制
<connectionStrings>
    <add name="Xrm" connectionString="Server=https://crm.ourdomain.ca/org" />
</connectionStrings>
<microsoft.xrm.client>
    <contexts>
        <add name="Xrm" type="XrmPortal.Service.XrmServiceContext, CustomerPortal.WebAPI" />
    </contexts>
    <services>
        <add name="Xrm" type="Microsoft.Xrm.Client.Services.OrganizationService, Microsoft.Xrm.Client" />
    </services>
</microsoft.xrm.client>

下面是我如何在Web API项目中连接到CRM:

代码语言:javascript
运行
AI代码解释
复制
using (XrmServiceContext xrm = new XrmServiceContext())
{
    var contact = xrm.ContactSet.SingleOrDefault(x=>x.Id == theGuid);
}

XrmServiceContext正在继承Microsoft.Xrm.Client.CrmOrganizationServiceContext

非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2014-11-27 11:51:30

由于您已经准备好连接到CRM 2011 Web API,因此在连接到服务时可以使用SDK中的示例:

代码语言:javascript
运行
AI代码解释
复制
private readonly AutoRefreshSecurityToken<OrganizationServiceProxy, IOrganizationService> _proxyManager;

然后在每次进行调用时或需要时使用_proxyManger续订令牌。

代码语言:javascript
运行
AI代码解释
复制
    protected override void AuthenticateCore()
    {
        _proxyManager.PrepareCredentials();...

代码语言:javascript
运行
AI代码解释
复制
    protected override void ValidateAuthentication()
    {
        _proxyManager.RenewTokenIfRequired();...

更新令牌方法如下所示:

代码语言:javascript
运行
AI代码解释
复制
    /// <summary>
    ///   Renews the token (if it is near expiration or has expired)
    /// </summary>
    public void RenewTokenIfRequired()
    {
        if (null == _proxy.SecurityTokenResponse
            || !(DateTime.UtcNow.AddMinutes(15) >= _proxy.SecurityTokenResponse.Response.Lifetime.Expires)) return;
        try
        {
            _proxy.Authenticate();
        }
        catch (CommunicationException)
        {
            if (null == _proxy.SecurityTokenResponse ||
                DateTime.UtcNow >= _proxy.SecurityTokenResponse.Response.Lifetime.Expires)
                throw;

            // Ignore the exception 
        }
    }

这是SDK示例中的一个略微修改的版本,如果您需要更多帮助或信息,请告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27154282

复制
相关文章
VBA: 定时保存Excel文件
文章背景:有一份文件的数据更新比较频繁,而其他电脑需要随时查看该文件的最新数据,因此,需要经常保存该文件。
Exploring
2022/09/20
2.4K0
VBA:  定时保存Excel文件
Word VBA技术:强制用户在指定文件夹中保存文档
可以使用下面列出的SaveFile过程来代替Word自己的内置文件保存程序,这将强制用户将文档直接保存到指定的目标文件夹或者该文件夹中的子文件夹,而不能将文档保存到目标文件夹之外的位置。
fanjy
2023/02/24
7940
VBA:获取指定数值在指定一维数组中的位置
文章背景:在采用VBA抓取数据时,有时需要判断指定数值是否在一维数组中已存在;如果存在,则希望能够获取该数值在数组内的位置。
Exploring
2022/08/10
7.4K0
VBA:获取指定数值在指定一维数组中的位置
VBA Excel 文件发布成PDF文件
批量把某个文件夹里的Excel文件发布成PDF文件,注意需前提设置好打印区域,打印缩放,当然这些你们也可以用代码实现!
办公魔盒
2019/07/22
1.3K0
VBA Excel 文件发布成PDF文件
复制指定源位置的多级文件夹下所有文件到指定目标位置
  3.遍历源位置文件夹下所有的文件,修改源位置为当前遍历项的文件位置,目标位置为刚刚上部创建的文件夹位置。
阿豪聊干货
2018/08/09
1.8K0
【VBA】在excel中检索文本
虽然在excel文件中检索的vba代码不知道写了多少遍了,每次需要的时候,都是从网上找,然后写。实在是低效的做法。从网上找了一段代码,放在此处,以后需要的时候可以随手拿来。
东风压倒西风
2022/09/06
2.9K0
VBA: 通过Dir函数查找指定文件
文章背景: 通过VBA编写代码时,有时需要判断某个文件是否存在;或者判断在文件夹内是否存在指定类型的文件。此时,就会涉及到Dir函数。下面就来介绍Dir函数的语法和应用场景。
Exploring
2022/09/20
7.1K0
VBA: 通过Dir函数查找指定文件
matlab保存图片到指定文件夹_matlab保存图片到指定路径
gcf固定,保存为1.png. 如果你想保存为别的格式,jpg什么的都可以,具体支持格式如下:
全栈程序员站长
2022/09/30
3.4K0
matlab保存图片到指定文件夹_matlab保存图片到指定路径
在xcode4.2中手工添加GPX文件,指定位置。
XCode 4.2终于支持地点模拟了,不用忍受真机调试的各种不便了,模拟方法也很简单(恕我盗用几个别人的图):
EltonZheng
2021/01/26
1.7K0
在xcode4.2中手工添加GPX文件,指定位置。
Excel: 通过VBA代码打开ppt文件
文章背景:使用Excel的Userform时,有时想要打开指定路径的ppt文件。下面介绍两种打开ppt文件的方式。
Exploring
2022/09/20
3.5K0
Excel: 通过VBA代码打开ppt文件
使用Excel的VBA下载文件
今天发现了个用EXCEL下载文件的实例,看起来很不错,收藏一下。 附件如下:xls 这是代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 Sub downloads()     Dim i As Integer     Dim Path As String     Dim str As String     Application
用户1272546
2018/06/04
3K0
VBA: 遍历文件抓取指定条件的数据
文章背景:要查看某次考试成绩不及格的所有学生名单;假定按年级建文件夹,每个文件夹内有各班的考试成绩表(见下图)。需要遍历所有表格,然后对每行的学生成绩进行判断。
Exploring
2022/08/10
1.6K0
VBA: 遍历文件抓取指定条件的数据
Excel VBA文件分割器构思
有一堆定长文件和长度字段定义,我们需要用Excel进行按长度分列。 如何存储长度字段定义和分割? 1.把复制出来的列定义存到一个表中,前面再加一列文件名。 这样子文件清单怎么列?VBA程序可以扫描但是要提供动态触发更新,或者数据透视加VBA刷新。 2.文件名信息存到另一个表? 手动步骤多了。 早上突然想到可以先在一个表转换:把长度类型定义分别拼接成特定形式存到文件名列表的列中。 未完待续。
林万程
2018/06/26
5600
批处理之实战一--找到指定文件的指定关键词,并将结果保存到指定位置的TXT中!
昨天看到有个小伙伴在微信后台留言,说想要做一个批处理文件,搜索软件运行产生的log日志,搜索其中的关键词,并将结果打印出来,这个真的是很有实用意义啊,一方面减小了我们的工作量,另一方面也是对我们学习成果的一个检测和实际应用。所以,今天发个有关BAT批处理的教程。
浩Coding
2019/07/03
2.8K0
批处理之实战一--找到指定文件的指定关键词,并将结果保存到指定位置的TXT中!
VBA 在 Excel 中的常用操作
设置单元格 Value 里使用 Chr(10) 和 Chr(13),分别表示回车、换行。
零式的天空
2022/03/24
3.3K0
VBA 在 Excel 中的常用操作
设置单元格 Value 里使用 Chr(10) 和 Chr(13),分别表示回车、换行。
mzlogin
2020/04/16
3.8K0
Excel: 通过VBA代码打开word文件
文章背景:在使用Excel的Userform时,有时想要打开指定路径的word文件。下面介绍打开word文件的一种方式。
Exploring
2022/09/20
3.9K0
Excel: 通过VBA代码打开word文件
VBA汇总多个Excel文件数据
将某个文件夹下,所有Excel文件及子文件夹下的Excel文件内容,复制到一张汇总表。
xyj
2020/07/28
2.7K0
VBA汇总多个Excel文件数据
VBA: 打开带密码的Excel文件
文章背景:想要通过VBA打开一份带密码的Excel文件,然后在文件内填入信息。前述要求可以借助workbook.open来实现。
Exploring
2022/09/20
4.6K0
JetBrains软件配置文件保存位置修改
JetBrains相关产品很好用,但是配置文件真的很占空间,而且默认是放到c盘的,所以最好的解决办法就是修改一下配置文件的保存位置。
MinChess
2022/12/26
4.1K0
JetBrains软件配置文件保存位置修改

相似问题

api加密密钥库服务真的安全吗?

10

安全地在会话中存储API密钥吗?

10

真的有任何安全的方法来存储加密密钥吗?

20

在HMAC哈希中传递API密钥安全吗?

10

如何安全地存储API密钥

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文