如何获取调用方法的Web服务

时间:2011-04-12 04:47:02

标签: asp.net web-services

我有一个webservice'mywebservice',并在其中定义了一个web方法'mywebmethod'。 此Web方法调用一个函数'callme()',该函数在另一个类中定义。 我想获取调用此函数的服务名称以及methodname。我想在'callme()'函数中使用它。

- 'mywebservice.asmx.cs'

[WebMethod]
public void mywebmethod
{
     callme();
}

- 'class1.cs'

public void callme()
{
     // --- I want service name(mywebservice) & methodname(mywebmethod) here.
}

1 个答案:

答案 0 :(得分:1)

一种可能的方法是使用StackTrace类(参见示例部分以开始)回到调用堆栈以获取类型名称&方法名称 - 这将为您提供实现服务的类/方法的名称。

请注意,堆栈跟踪构造是一项昂贵的操作 - 因此,我建议将必要的信息作为参数传递给方法。此外,如果您可以说明为什么需要此信息(服务和方法名称),您可以获得更好的答案来解决您的实际问题。