C# WCF-来自另一个程序集的服务合约
从上周开始,我一直在用谷歌搜索答案,但什么也没找到。也许我只是用不正确的关键词搜索 基本上,我们有一个正在运行的WCF服务,然后我们有一个单独的dll,其中包含另一个ServiceContract。我们想知道是否可以在当前运行的服务中公开单独的dll,如果可以,如何公开 我们还是WCF的新手,如果这是一个愚蠢的问题,请原谅( 我们正在使用.NET3.5SP1和C 问候 编辑:C# WCF-来自另一个程序集的服务合约,c#,wcf,assemblies,C#,Wcf,Assemblies,从上周开始,我一直在用谷歌搜索答案,但什么也没找到。也许我只是用不正确的关键词搜索 基本上,我们有一个正在运行的WCF服务,然后我们有一个单独的dll,其中包含另一个ServiceContract。我们想知道是否可以在当前运行的服务中公开单独的dll,如果可以,如何公开 我们还是WCF的新手,如果这是一个愚蠢的问题,请原谅( 我们正在使用.NET3.5SP1和C 问候 编辑: 我们希望将我们的服务分为“模块”。因此,服务实现(方法、ect)和契约(接口)都在单独的库中。因此,假设您有一个名为“客
我们希望将我们的服务分为“模块”。因此,服务实现(方法、ect)和契约(接口)都在单独的库中。因此,假设您有一个名为“客户端”的模块。我们希望与客户端相关的所有内容都在同一个单独的库(DLL)中而不是一个从多个接口继承的大型基类。这是一个庞大的服务,我们需要多个开发人员同时处理同一服务的不同部分。这是我被指示要解决的问题,但如果可以做到,那么就不能。我希望当您使用另一个程序集时,这会变得更合理(dll)作为“main”项目中的引用,然后将using指令添加到WCF服务实例化的文件中。然后,您可以简单地使用引用的服务契约来设置具有正确端点和绑定(配置)的运行服务.假设您询问如何在单独的DLL/应用程序中运行的服务中实现在一个DLL中声明的服务契约: 编辑以匹配后期编辑
我想一个解决办法是你有一个主服务主机托管你的WCFMainLib,然后你的所有客户端都会连接到WCFMainLib 然后,WCFMainLib像一个代理一样连接到本地主机(或其他服务器)上的所有其他WCFModuleLib以获取数据 WCFMainlib将实现IWCFModuleLib1、IWCFModuleLib2等服务契约接口,并将它们公开给WCFClient。然后,接口的实际实现将是对实际WCFmodulelib的调用 这可能会带来一些开销,但总的来说也会引入一些“功能”,这些功能可能会使您的上司或服务可用性受益
或者,如果您只是想委托编程工作,您可以告诉每个团队使用分部类为您的WCFLib使用分部类,并在分部类上使用每个服务合约,然后每晚进行编译。您能否澄清“在当前运行的服务中公开单独的dll”的含义,就这样我们在同一页上?我们想把我们的服务分成“模块”。所以服务实现(方法,等等)和契约(接口)都在不同的库中。所以让我们假设你有一个名为“客户端”的模块。我们希望与客户端相关的所有内容都在同一个单独的库(DLL)中而不是一个从多个接口继承的大型基类。这是一个庞大的服务,我们需要多个开发人员同时处理同一服务的不同部分。这是我被指示要解决的问题,但如果可以做到,那么就不能。我希望这更合理??我希望在单独的dll中也有4个。参见my编辑我的问题。我们需要向客户端项目添加多个服务引用吗?我的老板想要一个由多个模块组成的单一服务,但您只能指定一个命名空间和类(服务)在.svc文件中。因此,我假设我的老板想要的东西无法实现。我遇到过关于如何在ASP.NET、动态托管和虚拟.svc文件中托管WCF的帖子,但我不能有一个由多个dll组成的单一服务。不过,感谢您的回复。每个服务都需要一个单独的.svc文件,虚拟或其他。您可以有许多c由单个服务实现的契约,但您将服务引用设置为该服务-多个服务需要多个服务引用。但是,您可以使用“服务”在其他DLL中,仅作为实现,并创建一个包装器服务,该服务实现所有服务契约,但只转发到其他DLL中的单独实现-这将需要一个服务引用