问题标签 [netnamedpipebinding]

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 投票
0 回答
895 浏览

c# - 在asp .net core 2.0 api中使用网络命名管道绑定使用WCF服务

是否可以在 asp .net core 2.0 api 中使用网络命名管道绑定来使用 WCF 服务?

始终可以选择使 WCF 服务使用启用 http 的绑定。但我有一个特定的要求来做到这一点?

我在谷歌上没有找到任何有用的资源。

0 投票
0 回答
337 浏览

c# - Unity 中的 NetNamedPipeBinding 支持

新版本的 Unity 是否支持 NetNamedPipeBinding (WCF)?如果是,你能举个例子吗?

我能够使用 Visual Studio 15(客户端和服务器端)中的 NetNamedPipeBinding来实现这个示例,但是,在 Unity 中实现客户端会导致以下错误:

InvalidOperationException:不支持通道类型 IDuplexSessionChannel。

我确实设法在 Unity 中为 BasicHttpBinding(客户端)实现了这个示例。

有什么建议么?

编辑:

我在以下行中得到异常:

Unity 版本:2017.2.0f3(64 位)我放置在 Unity 中的 System.ServiceModel DLL 我从这里获取:

C:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0

谢谢!

0 投票
1 回答
260 浏览

wcf - WCF 客户端作为控制台应用程序运行,但作为 Windows 服务运行,失败并出现 EndpointNotFoundException

我编写了一个 C# 控制台应用程序来使用 NetNamedPipeBinding 使用本地 WCF 服务。我使用的 WCF 服务作为本地 Windows 应用程序运行。我的 WCF 客户端可以作为控制台应用程序正常工作。但是,当我将本质上相同的 WCF 客户端实现为不是作为控制台应用程序而是作为 Windows 服务时,我的 WCF 客户端找不到本地 WCF 端点并引发 System.ServiceModel.EndpointNotFoundException 异常。

为什么 WCF 客户端作为控制台应用程序运行良好,然后在客户端作为 Windows 服务运行时抛出 EndpointNotFoundException?

这就是我在客户端代码中创建通道工厂的方式:

然后我像这样创建频道:

到目前为止没有错误,但是当我尝试按如下方式实际使用通道时,出现异常:

当此代码作为以本地系统登录的 Windows 服务运行时,在我的 WCF 客户端中对 _bluehillAPIService.APIHeartbeat() 的调用会生成 System.ServiceModel.EndpointNotFoundException,但当本质上相同的代码作为控制台应用程序运行时工作正常。

0 投票
0 回答
35 浏览

wcf - 启动用于与本机 api 通信的自托管 WCF 服务的快速方法

我正在研究用于生成 3D CAD 模型的组件。由于用于生成模型本身的 api 是本机的,因此我坚持使用 WCF/NetNamedPipeBinding 进行 IPC。Web 应用程序 (IIS) 正在使用该组件。客户端代理本身将服务主机作为自己的进程启动(!)。这背后的原因是,原生 API 需要在自己的内存中“运行”以提供未损坏的 3D 模型。因此 WebApplication (IIS) -> WCF Proxy Client -> WCF ServiceHost in its own process (EXE, self hosting) -> Native API

问题:servicehost启动需要几秒钟,太长了。尤其是从多线程环境中调用它时。

有没有办法按需启动这个自托管服务?我的想法是类似于 20 个正在运行的服务主机(= 进程),例如在其中 15 个正在使用之后会扩大规模。请记住,IIS 托管服务不是一个选项,因为 IIS 不会在每次请求时在其自己的进程(使用自己的内存)中创建这样的服务主机。

0 投票
0 回答
49 浏览

sql-server - 如何使用 SSIS 代理用户从 SSIS 使用 WCF 服务?

我的项目正在使用 netnamedpipe 服务对数据库执行 CRUD 操作并访问数据库对象。问题:当我在 SSIS 中使用 NetNamedpipe 服务并使用 SSIS 配置管理器中的 Localhost 凭据(使用 Windows 身份验证)通过 SQL 服务器代理运行作业时,作业正在成功执行并按预期对表执行 CRUD 操作。但是,当我使用再次处于 Windows 身份验证模式的 SSIS 代理用户运行相同的作业时,它给了我以下附加错误。

包执行成功f... 步骤成功。

我们是否有任何单独的方式来使用 SSIS 代理用户使用 WCF/netnamedpipe 服务?

注意:代理用户具有访问必要数据库对象以进行 CRUD 操作的登录凭据。

请帮助我解决这个问题,因为我在过去几个月面临这个问题并使用 SQL server Agent 角色运行作业,这在 PROD 环境中是不可取的。

0 投票
1 回答
78 浏览

c# - 多个服务器实例中的 WCF 相同服务合同

我正在尝试创建同一 WCF 服务器 (NetNamedPipes) 的多个实例(多次启动应用程序),但在启动第二个实例时遇到问题......服务器实例使用不同的管道名称和端点名称。我使用了此处的示例,仅通过启动参数设置端点和管道名称。但是在第二种情况下,我收到一条错误消息,指出存在错误状态,因此无法打开服务主机。

使用具有不同端口的 Http 绑定是可行的,但我想坚持使用命名管道。

服务器:

错误消息:AddressAlreadyInUseException因为不同的端点已经在监听这个端点。

0 投票
2 回答
291 浏览

wcf - 如何正确关闭 WCF Netnamedpipebinding 通道?

我有一个从我的应用程序到 Office 插件的 WCF Netnamedpipebinding。我注意到,当办公应用程序忙于做其他事情时,我的应用程序在使用 WCF 方法时会锁定。我添加了我的代码示例。似乎代码停止并使用 channel.close 方法等待。

  1. 将 channel.close 更改为channel.BeginClose的解决方案是什么?
  2. 我需要传递给 BeginClose 方法的状态对象是什么?

    /li>

和 closeChannel

0 投票
1 回答
10 浏览

wcf - 将客户绑定端点添加到同一 ServiceHost 后,WCF 客户端无法正常工作

  1. 扩展托管 NamedPipeServerStream 的 WCF 内容以支持与 nodejs 的通信,如果使用端点“”打开一个新的 ServerHost,它就可以工作net.jsonpipe://localhost/JasonService
  2. 一个带有端点“ net.pipe://localhost/MyService”的可行的ServerHost,使用代理,c#客户端一切都很好DuplexClientBase
  3. 一旦我在一个 ServerHost 中打开这两个端点,c# 客户端就不再工作了。There was an error reading from the pipe: The pipe has been ended. (109, 0x6d)使用 WCF TRACE,我在 TransportSend 时看到异常。

有人有任何帮助的线索吗?

提前致谢