【发布时间】:2014-08-26 17:18:54
【问题描述】:
我已经创建了 wcf 服务,我想为所有功能创建单个服务。
所以我使用了部分类并尝试像这样实现它。
文件名:-IMainService.cs
[ServiceContract]
public interface IMainService
{
[OperationContract]
void DoWork();
}
文件名:-MainService.svc
public partial class MainService : IMainService
{
public void DoWork()
{
throw new NotImplementedException();
}
}
文件名:-IProductService.cs
[ServiceContract]
public interface IProductService
{
[OperationContract]
void GetProducts();
}
文件名:-ProductService.svc
public partial class MainService : IProductService
{
public void GetProducts()
{
throw new NotImplementedException();
}
}
当我在应用程序中引用服务时,我可以看到两个客户端,MainServiceClient 和 ProductServiceClient。我根据文件名猜测这些名称,并且都包含属于那里的文件的方法,例如:MainServiceClient 有 Dowork 和 ProductServiceClient 有 GetProducts。
我相信我走错了路,有人可以建议我如何实现单一服务概念。
编辑:
- 多个接口和服务文件背后的想法是 可维护性。
- 我们有很多方法(100+)所以我不想把所有东西都放在一个上 服务文件,所以我将其拆分。
【问题讨论】:
-
那你为什么有2个接口呢?我想你可以只有一个界面和一个服务,但我怀疑这不是个好主意。
-
为什么你的两种方法都没有一个 WCF 服务?
-
多接口多文件背后的理念是可维护性。
-
部分课程怎么样?您可以拥有一个包含完整接口定义的代码文件,然后实现该类,以便为每个方法拥有一个代码文件...