在不同的.svc文件中定义不同的接口

本文关键字:定义 接口 svc 文件 | 更新日期: 2023-09-27 17:54:25

I have two different Interface service that I'm using 
    1. IService1
    2. IService2
I define two files 
    1. IService1.cs   => that hold the Interface of IService1 
    2. IService2.cs   => that hold the Interface of IService2
I also define two different .cvs 
    1. IService1.cvs=> that hold the Interface of IService1 
    2. IService2.cvs=> that hold the Interface of IService2

是否可以有这个文件结构,或者更好的是所有的合同接口在一个文件中,并有一个。cvs文件?

在不同的.svc文件中定义不同的接口

是。svc文件。

如果您有两个.svc文件,那么您就公开了两个不同的服务(两个类),其中每个服务都有单个端点、自己的WSDL和自己的行为(如安全性、节流等)。

如果您有一个.svc文件,服务必须实现两个接口(一个类),并且它将具有在同一WSDL中描述的具有单个服务行为的两个不同端点。

我将跳过手动修改。svc文件以指向同一个类的部分,因为它没有真正的好处,而且会使事情变得更加复杂(配置是每个服务类而不是每个。svc文件)。

所以这真的取决于你有什么要求?

看情况。

如果IService1IService2的实现在同一个类中:

public class MyService : IService1, IService2
{
  ...
}

那么一个。svc文件,你需要两个端点

如果它们在不同的类中:

public class MyService1 : IService1
{
  ...
}
public class MyService2 : IService2
{
  ...
}

然后两个。svc文件