我有几个桌面应用程序现在正在转换为 Web 服务,因此第三方 Web 应用程序可以使用两者的服务。现在,两个应用程序的某些模块具有相似的功能,我们真的希望使用相同的接口但不同的实现。
因此,假设服务接口/合同中有一个 getUser(string id) 方法,我是否必须将其更改为 getUser(string id, string appId) 之类的方法?
这是针对 .NET Web 服务的,但我不倾向于 SOAP 或 REST(或 WebAPI)。我不太关心编码部分。
我有几个桌面应用程序现在正在转换为 Web 服务,因此第三方 Web 应用程序可以使用两者的服务。现在,两个应用程序的某些模块具有相似的功能,我们真的希望使用相同的接口但不同的实现。
因此,假设服务接口/合同中有一个 getUser(string id) 方法,我是否必须将其更改为 getUser(string id, string appId) 之类的方法?
这是针对 .NET Web 服务的,但我不倾向于 SOAP 或 REST(或 WebAPI)。我不太关心编码部分。
您将需要为服务(接口)定义不同的服务端点。这意味着您需要两个不同的接口,而不仅仅是实现。例如,如果您要在 WCF 中创建服务,您将定义两个不同的服务,每个服务都有一个不同的端点 (URN),定义如下:
<services>
<service name="MyService">
<endpoint address ="http://something"
...</service>
<service name="MyOtherService">
<endpoint address = "http://somethingelse"