我有一个独特的要求......我的公司拥有超过300个网络应用程序的组合。我们想要做的是,在每个应用程序上,创建一个特定的“CommonError.aspx”页面 - 这将是一个“全局”页面,处理和未处理的所有错误将重定向到。如果用户想要提供有关他们刚刚遇到的错误以及其他几个数据点,则此页面将有一个用于自定义反馈的文本框。然后,用户将能够单击“提交”,并且“反馈”将被输入到公共数据库中,称为“ErrorFeedback”。
无论如何,我们的想法是在我们的每个应用程序中都有这个功能。显然,修改和自定义每个应用程序以包含此功能将非常耗时。这些应用程序是MVC和Web窗体的混合体。 我想要做的是创建一个简单,拖放,即插即用的解决方案,每个应用程序的开发人员都可以采取这些解决方案,并简单地放入他们的解决方案。这一切都让Nuget尖叫,但是我们还没有使用Nuget,所以这不是一个选择。我真的不确定如何处理这个问题,任何建议都会很棒!
答案 0 :(得分:1)
您可以创建error handling module,它将捕获您的应用程序未捕获的所有错误。该模块将是一个拖放程序集(DLL),必须加载到每个site or server's configuration的<httpModules>
部分。
例如,您可以让处理程序以某种方式记录错误(每个应用程序,每个服务器或一个全局日志[service]),从该日志条目中获取一个ID并重定向到所有网站共享的页面或每个应用程序必须包含的通用错误处理表单。显示此页面后,您可以摆脱处理程序的有限环境(因为它是一个新请求),并且可以使用重定向URL中使用的日志ID执行任何操作。