【发布时间】:2008-11-07 01:02:16
【问题描述】:
情况是这样的。我有一个 asp.net webservice 应用程序...比如说一个名为 api.asmx 的页面
在后面的代码中我有几个方法,例如:
[WebMethod(Description="Method1")]
public int GetSomething(int num1, int num2){
try{
return SomeObject.DatabaseCall.DoSomething(num1, num2);
}
catch(Exception ex){
object[] pars = new object[] { num1, num2 };
LogError("GetSomething", pars, ex);
}
}
[WebMethod(Description="Method2")]
public int GetSomething2(string w, string j, int f){
try{
return AnotherObject.DoSomething(w, j, f);
}
catch(Exception ex){
object[] pars = new object[] { w, j, f };
LogError("GetSomething2", pars, ex);
}
}
当然这只是两个简单的例子,如果抛出异常,我可以记录方法调用和传入的参数。
还有其他方法可以做到这一点吗?有什么方法可以提取被调用的方法和/或参数。我想我希望有人会告诉我,我可以拥有某种功能,例如:
LogError(ex);
在该函数中,我可以访问一些服务器或环境变量,这些变量将公开被调用的方法。也许类似于 CurrentContext.WebServiceCall.Magic 属性...我是否需要将所有调用包装在 try/catch 中,然后输入方法名称和参数,或者是否有其他方法可以访问此信息。
希望这个问题不会太愚蠢。
【问题讨论】:
标签: c# asp.net web-services