gpt4 book ai didi

c# - Sharepoint ClientContext 在服务中的使用

转载 作者:行者123 更新时间:2023-11-30 16:49:41 26 4
gpt4 key购买 nike

我在我们的一项 WCF 服务中使用 SharePoint SDK。

要从 SharePoint 获取字节数组(文档),我使用 SDK 的 ClientContext 类。对 SharePoint 的调用都包含在一个名为 SharePointConnector 的自定义类中(类似于一种存储库模式)。

我的目标是使用接口(interface) ISharePointConnector 将 SharePointConnector 类注入(inject)我的 wcf 服务。

我的问题:

  1. 我应该在 SharePointConnector 的构造函数中创建 ClientContext 还是应该在每次调用时使用它,包装在一个 using block 中?我的顾虑:创建 ClientContext 的调用成本高吗?对 clientContext 成员变量的同一个实例进行多次调用时线程安全吗?
  2. 我应该在什么时候注册 url 以便它可以在 ClientContext 的构造函数中使用?

请注意,通过在构造函数中创建 ClientContext 实例来实现它,很难获得创建 ClientContext 实例所需的 url,因为 DI 容器的构造函数注入(inject)....

最佳答案

我强烈建议您在方法范围内使用 ClientContext(或您的情况下的任何调用),而不是在构造函数中实例化它,主要有两个原因:

  1. 灵 active :您将能够根据给定情况下的需要调整ClientContext
  2. 资源:正如您已经指出的,ClientContext 实现了IDisposable 接口(interface),因此应该在使用后释放/释放它,这将为您节省一些资源。你知道演习:

    using (ClientContext clientCtx = new ClientContext(siteUrl)){//做你的事... }

关于c# - Sharepoint ClientContext 在服务中的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36152792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com