当web服务有一堆方法,并且一个方法想要使用另一个方法时,人们通常会怎么做?像任何其他外部调用者那样调用该方法似乎是浪费资源。
例如:
[Web Method]
public BlahObject GetBlah() {
}
[Web Method]
public String Blah2() {
var blah = GetBlah(); // this will involve serializing, deserializing, etc.
}发布于 2011-09-22 16:57:48
这取决于您的服务所在的位置以及您期望的解耦级别。
此外,如果两个服务都在同一个托管环境中,并且您需要频繁地从一个服务调用另一个服务的方法,那么您当然需要重新考虑您的服务设计的粒度。
直接从其他服务调用服务将为您提供高度解耦的解决方案-但会对性能产生影响。如果所有服务都在您的控制之下-最好的做法是更仔细地设计服务接口,以避免此类调用……
发布于 2011-09-21 19:42:58
我不熟悉C#,但您应该能够直接调用该方法,而不需要通过web服务api。
甚至你也可以重构你的代码,让web方法和函数方法分开。然后,您可以直接从任何方法调用函数方法。
https://stackoverflow.com/questions/7498027
复制相似问题