创建全局变量以在IErrorHandler实现中使用

时间:2012-03-23 18:13:54

标签: wcf

我需要一种方法来传递IErrorHandlers HandleError方法用户输入的数据。

当调用服务时,我想设置一个会话变量(或类似会话变量)用用户数据填充它。 然后运行服务方法,如果有IErrorHandler捕获它的错误。在我的HandleError方法中,我希望能够从“会话变量”中获取数据,然后删除会话变量。

我能够设置一种填充会话变量的方法,但是这个变量在导入我的ErrorHandler类时返回null。

Process(Order o)
{
    HttpContext.Current.Session["InputData"] = o;

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

由于所有这些都发生在同一个请求中,因此您不需要会话变量。

尝试使用所需的数据创建服务类的非静态成员。在服务操作开始时设置它。如果IErrorHandler确定此服务中发生错误,那么它应该能够检索该值。