Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exception 无法分配属性StackTrace,它为';它是只读的_Exception_Enterprise Library - Fatal编程技术网

Exception 无法分配属性StackTrace,它为';它是只读的

Exception 无法分配属性StackTrace,它为';它是只读的,exception,enterprise-library,Exception,Enterprise Library,我有我的异常处理程序,用于企业库异常处理。 此处理程序包含方法HandleException: public Exception HandleException(Exception exception, Guid handlingInstanceId) { Exception wrap = new Exception(); wrap.StackTrace = exception.StackTrace; re

我有我的异常处理程序,用于企业库异常处理。 此处理程序包含方法
HandleException

public Exception HandleException(Exception exception, Guid handlingInstanceId)
        {

            Exception wrap = new Exception();
            wrap.StackTrace = exception.StackTrace;
            return wrap;
        }
当我尝试将收到的
异常.StackTrace
属性分配给我的变量
wrap
时,我得到错误:

property or indexer 'System.Exception.StackTrace' cannot be assigned to -- it is read only

如何将其分配给变量

这就是我所看到的典型情况

    public Exception HandleException(Exception exception, Guid handlingInstanceId)
    {

        //Do something with the Exception.

       return exception;
    }


你不能。它是只读的。你想做什么?我想记录属性,在日志文件中我看到StackTrace不可用,所以我应该创建一个处理程序,它将写入我需要的所有内容。看起来你也在尝试包装异常,所以我想知道你为什么要复制堆栈跟踪。企业库是企业和现实世界发生巨大碰撞的地方。这个编译器错误只是它的另一个方面,不清楚异常意味着什么。企业中的失败往往是被改变或隐藏的,它与企业不兼容。
    public Exception HandleException(Exception exception, Guid handlingInstanceId)
    {

        ApplicationException appEx = new ApplicationException(exception.Message, exception);

       return appEx ;
    }