单个终结点地址处的 WCF 大型接口(interface)

标签 wcf service contract endpoint

我有一个 wcf 服务,它在单个端点地址上公开了大量的服务方法。到目前为止,所有服务方法都在单个服务契约(Contract)类中实现。这个服务契约类实现了几个服务契约接口(interface)。现在我想将服务契约方法的实现拆分成几个类,以避免契约类变得很大。我使用带有 ServiceHost 的自托管方案。 ServiceHost 只采用实现服务方法的单一类型的类型,因此似乎所有内容都必须在此类中实现。当然,这些方法的实质可以分解为几个类。但是有没有办法将方法分成几个类?

最佳答案

您可以将服务实现为 partial class ,它允许您将实现拆分为多个文件。

如果要求保留一个端点和一个接口(interface),那么就没有其他方法可以拆分它——您创建的一个类必须实现所有接口(interface)。

我建议保持服务实现尽可能简单,并且只让每个方法都是一个单行方法,将操作委托(delegate)给实际实现,然后可以将其拆分为多个类。也许每次手术都做一个有意义?这是我以前成功使用的模式。

关于单个终结点地址处的 WCF 大型接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3671784/

相关文章:

class - 接口(interface)契约,类对象?

.net - 无法启动应用程序 "WcfTestClient.exe"

c# - WCF Restful Web服务端点暴露,但方法全部返回http 404未找到c#

wcf - 在 WCF customBinding 中接受 UsernameToken 和 BinarySecurityToken

wcf - 在 RESTful WCF 服务中将类作为参数传递

wcf - 服务契约(Contract) WCF 中的 DI

wcf - 自动启动/预热功能在 IIS 7.5/WCF 服务中不起作用

service - 错误1001.指定的服务已存在

android - 如何获取android后台运行进程的详细信息

c++ - 针对 C++20 契约(断言)进行测试