问题标签 [wcf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3701 浏览

c# - 高可用性

如果主端点死亡,是否有配置带有故障转移端点的 WCF 服务?有点像能够在 SQL 集群中指定故障转移服务器。

具体来说,我使用 TCP/IP 绑定来提高速度,但在机器不可用的罕见情况下,我想将流量重定向到故障转移服务器。不太担心丢失消息。我只是不想编写代码来处理重新路由。

0 投票
3 回答
2722 浏览

c# - WCF 服务 - 向后兼容性问题

我刚刚开始创建一些 WCF 服务,但我需要使它们向后兼容旧版(.NET 1.1 和 2.0)客户端应用程序。

我已经设法让服务为 3.0 和更高版本的客户端正确运行,但是当我使用 basicHttpBinding 端点(我认为这是我需要的兼容性所必需的)发布服务时,该服务会重构我的方法签名。例如

在客户端应用程序中显示为

我已经为我的自托管控制台应用程序尝试了 app.config 中我能想到的每个配置参数,但我似乎无法按预期实现此功能。我想这可能会导致我的期望存在缺陷,但令我感到惊讶的是,WCF 服务无法处理下层客户端的 bool 返回类型。

我当前的 app.config 看起来像这样。

有人可以建议吗?

0 投票
7 回答
11601 浏览

.net - Web 服务——WCF 与 ASMX(“标准”)

我正在做一个新项目。与常规的老式 Web 服务相比,使用 WCF Web 服务有什么好处吗?

Visual Studio 为两者提供模板。有什么区别?优点和缺点?

0 投票
18 回答
313333 浏览

wcf - 保护 REST API/Web 服务的最佳实践

在设计 REST API 或服务时,是否有任何既定的最佳实践来处理安全性(身份验证、授权、身份管理)?

在构建 SOAP API 时,您可以将 WS-Security 作为指南,并且有很多关于该主题的文献。我发现有关保护 REST 端点的信息较少。

虽然我理解 REST 故意没有类似于 WS-* 的规范,但我希望已经出现了最佳实践或推荐模式。

任何讨论或相关文件的链接将不胜感激。如果这很重要,我们将使用带有 POX/JSON 序列化消息的 WCF,用于使用 .NET Framework 的 v3.5 构建的 REST API/服务。

0 投票
4 回答
1152 浏览

c# - WCF 向后兼容性问题

我有一个必须从 .net 2.0 项目中引用的 WCF 服务。

我尝试使用“添加网络引用”方法来引用它,但它弄乱了参数。

例如,我在服务中有一个方法char[]需要传入 a,但是当我添加 Web 引用时,该方法需要一个int[].

所以然后我尝试设置svcutil并且它工作......有点。
我只能通过向我的.net 2.0项目添加一堆.net 3.0引用来编译服务类。这对建筑师来说并不好,所以我不得不这样做(而且可能也是最好的)。

所以我想知道是否有人对我如何设置.net 2.0项目以引用WCF 服务有任何指示或资源。

0 投票
4 回答
19630 浏览

wcf - 在 Silverlight 中向 WCF 添加压缩的最简单方法是什么?

我有一个访问 WCF Web 服务的 silverlight 2 beta 2 应用程序。正因为如此,它目前只能使用 basicHttp 绑定。Web 服务将返回相当大量的 XML 数据。从带宽使用的角度来看,这似乎是相当浪费的,因为响应,如果压缩,会小 5 倍(我实际上将响应粘贴到一个 txt 文件并压缩它。)。

该请求确实具有“Accept-Encoding: gzip, deflate” - 有什么方法可以让 WCF 服务 gzip(或以其他方式压缩)响应?

我确实找到了这个链接,但对于应该开箱即用的功能来说,它确实似乎有点复杂恕我直言。

好的 - 起初我使用 System.IO.Compression 作为答案标记了解决方案,因为我永远无法“似乎”让 IIS7 动态压缩工作。好吧,事实证明:

  1. IIS7 上的动态压缩一直在工作。只是 Nikhil 的 IE Web Developer Helper 插件没有显示它工作。我的猜测是,由于 SL 将 Web 服务调用交给浏览器,浏览器会“在幕后”处理它,而 Nikhil 的工具永远不会看到压缩响应。我能够通过使用监视浏览器应用程序外部流量的 Fiddler 来确认这一点。在提琴手中,响应实际上是 gzip 压缩的!

  2. System.IO.Compression 解决方案的另一个问题是 Silverlight CLR 中不存在 System.IO.Compression。

所以从我的角度来看,在 Silverlight 中启用 WCF 压缩的最简单方法是在 IIS7 中启用动态压缩并且根本不编写任何代码。

0 投票
8 回答
56129 浏览

c# - 在 WCF/.NET 中返回数据表

我有一个 WCF 服务,我想从中返回一个 DataTable。我知道这通常是一个备受争议的话题,就返回 DataTables 是否是一个好习惯而言。让我们把它放在一边。

当我从头开始创建 DataTable 时,如下所示,没有任何问题。该表已创建、填充并返回给客户端,一切正常:

但是,我一出去打数据库创建表,如下所示,我得到一个 CommunicationException“底层连接已关闭:连接意外关闭。”

该表在服务器端正确填充。它比我循环并返回的测试表要小得多,而且查询小而快——这里没有超时或大数据传输的问题。正在使用相同的确切功能和 DataContracts/ServiceContracts/BehaviorContracts。

为什么表格的填充方式会对表格成功返回有任何影响?

0 投票
5 回答
1160 浏览

.net - 通过 WCF 进行身份验证的最佳方式是什么?

通过 WCF 实现身份验证的最佳方法是什么?

我宁愿不使用 WS-*,因为它需要独立于传输。

我应该“自己动手”吗?是否有任何指导(文章/博客文章)?
或者有什么方法可以(而且我应该)在服务器端使用内置的 ASP.NET 成员资格和配置文件提供程序?

0 投票
1 回答
4177 浏览

.net - 我想要一些调试 WCF Web 服务异常的技巧

我创建了一个 WCF 服务,当我浏览到端点时,出现以下错误:

我已经解决了问题,但不喜欢这种体验!有没有人有任何调试此类问题的技巧或工具?

0 投票
5 回答
59296 浏览

c# - 使用 ConfigurationManager 加载 System.ServiceModel 配置部分

使用 C# .NET 3.5 和 WCF,我试图在客户端应用程序中写出一些 WCF 配置(客户端连接到的服务器的名称)。

显而易见的方法是使用ConfigurationManager加载配置部分并写出我需要的数据。

似乎总是返回 null。

完美运行。

配置部分存在于 App.config 中,但由于某种原因ConfigurationManager拒绝加载该system.ServiceModel部分。

我想避免手动加载 xxx.exe.config 文件并使用 XPath,但如果我不得不求助于它,我会的。只是看起来有点像黑客。

有什么建议么?