使用 ConcurrencyMode.Multiple 和 InstanceContextMode.PerCall 进行锁定

2024-03-10

我是否需要在使用的 WCF 服务中实现自己的锁定ConcurrencyMode.Multiple and InstanceContextMode.PerCall or InstanceContextMode.PerSession?自从有了新ServiceContext对象是在每次调用或新会话时创建的,我应该认为我不会,但我还不确定。

Example:

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerSession,
     IncludeExceptionDetailInFaults = false, MaxItemsInObjectGraph = Int32.MaxValue)]
public class ExampleService : IExample

不,您不必添加锁定。每次调用都会获得一个新的实例。

但是,如果您需要来自特定调用者的状态,则必须手动处理。

看到这个thread http://social.msdn.microsoft.com/forums/en-US/wcf/thread/ab22f4f4-95cb-44db-aed9-9455c2316001了解更多信息

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ConcurrencyMode.Multiple 和 InstanceContextMode.PerCall 进行锁定 的相关文章

  • 当一个控制台应用程序已在运行时,如何在 Visual Studio 中启动第二个控制台应用程序

    我正在研究 WCF 书中的一些示例 单个解决方案中有一个主机项目和客户端项目 两者都是控制台应用程序 主机是启动应用程序 但客户端应用程序似乎没有像书中所说的那样打开控制台 书上说 当主机运行时 运行客户端 运行 按钮已被禁用 因为它已经在
  • WCF 服务绑定采用默认值而不是自定义值

    我已经构建了一个 APi 它是一个 WCF 服务 在服务的 web config 中 我指定了一个自定义 bindong 如下所示
  • 关于数据库变更的通知

    我正在尝试一种场景 其中我想使用任何用户提交的更改来更新在不同 PC 上运行的桌面 UI 例如 Application1 安装在 PC1 PC2 和 PC3 上 假设所有 PC 都运行此应用程序 假设 PC1 上的用户 1 更改数据并提交到
  • RESTful WCF 的最低配置

    为了让 WCF 与 REST 一起工作 我至少需要在 web config 中放入什么 我已经用 WebGet 注释了我的方法 但他们没有收到消息 我发现您可以将以下内容添加到 svc 文件中的 ServiceHost 指令中 它会自动为您
  • WCF 的 BasichttpBinding 与 WSHttpBinding

    我想用服务器数据更新客户端数据 反之亦然 目前我正在使用 BasicHttpBinding 它比 wsHttpBinding 更快 我的要求是达到 快速数据通讯 安全通讯 BasicHttpBinding 和 wsHttpBinding 适
  • 无法在 Visual Studio 2010 IDE 中添加启用 HTTPS 的 WCF 服务作为服务引用

    通过 Visual Studio 2010 IDE 添加启用 HTTPS 的 WCF 服务作为服务引用时 出现以下异常 下载 https abc cloudapp net DataService svc 时出错 请求失败 HTTP 状态为
  • WCF Xml 与二进制序列化的优缺点

    我知道如果我将二进制序列化与 WCF 一起使用 我就会失去互操作性 如果我愿意接受这一点 我想知道使用二进制比 Xml 是否有效率优势 如果还有我上面没有提到的其他优点和缺点 是的 可能是一个大事件 XML 序列化数据比二进制数据要大 使用
  • “无法连接到远程服务器”

    我可以从 Windows 窗体程序调用第三方供应商的 Web 服务 当我尝试从 WCF Web 服务调用相同的 Web 服务和 Web 方法以及相同的 URL 时 出现以下错误 ExportValuationPolicyNumber Exc
  • WCF 发现根本不起作用

    我正在尝试将临时发现添加到简单的 WCF 服务客户端设置 当前通过控制台应用程序中的自托管实现 在 Windows 7 上使用 VS2010 进行调试 并执行我在在线教程中可以找到的任何操作 但发现客户端仍然什么也没找到 不用说 如果我打开
  • WCF 和 n 层架构以及序列化性能

    当使用 WCF 服务作为接口层使用 5 层架构 前端 gt 接口层 gt 业务层 gt 数据库层 gt 数据库 时 让客户端应用程序调用它的方法 我是否也应该使用 WCF 服务业务层和数据库层 我问是因为 3 个服务之间进行的所有序列化 反
  • 服务具有零个应用程序(非基础设施)端点

    我最近创建了一个WCF服务 dll 和一个服务主机 exe 我知道我的 WCF 服务工作正常 因为我能够成功地将服务添加到 WcfTestClient 但是 当我从服务主机 exe 使用 WCF 时 我似乎遇到了问题 我可以将对 WCF d
  • PHP WCF 集成

    是不是如果我想支持php客户端访问我的服务 我必须有一个基本的http端点 这是因为php仍然只支持soap 1 1吗 据我所知 自从我使用 PHP 以来已经两年了 情况仍然如此 如果客户端应用程序将使用 PHP 的内置 SoapClien
  • WCF RIA 服务 - 加载多个实体

    我正在寻找一种模式来解决以下问题 我认为这很常见 我正在使用 WCF RIA 服务在初始加载时将多个实体返回给客户端 我希望两个实体异步加载 以免锁定 UI 并且我想利用 RIA 服务来执行此操作 我的解决方案如下 似乎有效 这种方法会遇到
  • 使用 HttpClient 调用 WCF 服务

    我必须调用 WCF 服务 WCF 服务已开启 我可以编辑其配置 我想创建一个调用该服务的客户端 我无法将服务引用添加到我的客户端 因此我尝试使用 HttpClient 调用它 客户端代码 using var client new HttpC
  • WCF MaxReceivedMessageSize 属性未采用

    搜索了一下 没有运气 我不断得到 已超出传入消息的最大消息大小配额 65536 要增加配额 请使用相应绑定元素上的 MaxReceivedMessageSize 属性 这是有道理的 所以我进入服务器和客户端配置并进行更改 Client
  • 常见 WCF 异常:连接意外关闭

    我有三个项目 一种是 WCF 服务项目 一种是 WPF 项目 一种是 Microsoft 单元测试项目 我使用如下所示的数据对象设置 WCF 服务项目 DataContract public enum Priority Low Medium
  • 如何在自托管 WCF 中获取多部分表单数据?

    我已经搜索了很长一段时间 但没有找到我要找的东西 我在 Windows 应用程序中自行托管了一个 http WCF 现在 在我的服务方法之一中 我需要接收一个文件和一些表单数据字段 在类似的问题中 情况要么发送一个文件 这是通过流数据然后转
  • 数据协定中的 IsReference 属性

    目的是什么IsReference财产在DataContract 应用此属性后 请求和响应有何变化 它决定对象如何序列化 默认情况下 IsReference false Setting IsReference true允许对可以互相引用的对象
  • 强制 WCF 在进入实际函数之前对每个请求调用一个方法

    我有一个具有许多不同功能的 RESTful WCF 服务 对于每个函数 我需要调用我编写的身份验证方法 我可以在每个请求上手动调用此方法 但我一直在寻找一种方法来强制 WCF 引擎在输入这些函数之前调用此方法 有谁知道这是否可能 Cheer
  • WCF 服务 - 启动需要额外时间

    我发现 WCF 服务将需要 8 10 秒来加载第一个命中 之后将需要不到一秒钟的时间 有什么想法吗 可能是由于 NET 的冷启动 您是否考虑过设置IIS 预热模块它在初始请求之前初始化依赖项 来自学习IIS网站 http learn iis

随机推荐