重新分配Exception.Message的值

时间:2017-09-21 04:54:03

标签: c# asp.net-mvc exception

我有一个任务是制作一个通用的解决方案,如果用户没有特定的权限,它只会在模态弹出窗口中显示错误文本,否则它应该显示带有错误ID等的整个文本。问题是我可以以某种方式重新赋值给Exception.Message?

我做了其他一切,我只需要那样做。问题是Exception。消息是一个getter,没有setter组件。

我有这样的事情:

var err = new Excetion(some parameters);
var message = string.Empty;
if (User.isInRole("somerole"))
    message = err.Message;
else message = err.Note;
showError(message, and some other parameters);

还有其他方法,因为所有showError函数都是用showError(err.Message, and some parameters)调用的,所以我不会重写所有这些调用吗?只需替换err.Message。

希望我工资不高。提前致谢

1 个答案:

答案 0 :(得分:0)

您总是可以将该异常包装在另一个

var myException = new Exception ("my own message", err);

然后您仍然拥有InnerException中的原始内容,并且可以像

一样访问它
myException.InnerException