在更多文件中分离 Web 服务

本文关键字:分离 Web 服务 文件 | 更新日期: 2023-09-27 18:33:47

是否可以将Web服务拆分为更多文件?我正在用 C# 编写一个 Web 服务,并在 Linux 下使用 Mono 编写 rum。现在它已经有大约 80 个 webmethod,文件不透明且非常大。如何将 Web 服务方法拆分/分离到更多文件,以便服务器从外部(对于客户端)看起来是一个单元?我也在python(ladon webservice)中尝试过这个,但我找不到任何方法来拆分它。

请帮助某人,谢谢

在更多文件中分离 Web 服务

也许您可以将 Web 服务类分解为部分

类 - 这至少允许您将这个大服务分解为较小的部分。目标是每个部分都有一个单一的责任。

还可以重构服务,以便服务终结点仅包含 80 个 Web 方法,但每个函数过去包含的所有代码现在都封装在适当的类中

例如:

public myWethodToLogSomething(string something)
{
  //connect to db
  //save, do something
  //close connection
}

成为

public myWethodToLogSomething(string something)
{
  //move all the code out of the web service itself
  LogClass.Log(string)
}

因此,80 个 web方法 只是调用执行工作的类的存根 = 每个类都是可管理的,并且您不会破坏与客户的服务契约。