在Web服务内部使用Web服务

时间:2011-09-21 10:07:20

标签: web-services

当Web服务有一堆方法并且一种方法想要使用其他方法之一时,人们通常会做些什么?像任何其他外部调用者一样调用该方法似乎是浪费资源。

例如:

[Web Method]
public BlahObject GetBlah() {
}

[Web Method]
public String Blah2() {
    var blah = GetBlah(); // this will involve serializing, deserializing, etc.
}

2 个答案:

答案 0 :(得分:1)

我不熟悉C#,但您应该能够直接调用该方法而无需通过Web服务API。

即使您可以将您的代码分别考虑到Web方法和功能方法。然后你可以直接从任何方法调用函数方法。

答案 1 :(得分:1)

这取决于您的服务所在的位置以及您期望的脱钩程度。

此外,如果两个服务都在同一个托管环境中,并且您需要经常从另一个服务中调用一个服务的方法 - 那么您当然需要重新考虑服务设计的粒度。

直接从其他服务调用服务将为您提供高度分离的解决方案 - 但会影响性能。如果您控制的所有服务 - 最好的是更仔细地设计服务接口以避免此类呼叫......