【问题标题】:ELMAH on ASP.NET vNext?ASP.NET vNext 上的 ELMAH?
【发布时间】:2015-05-08 13:03:15
【问题描述】:

是否可以使用 ASP.NET vNext 配置 ELMAH?如果有,怎么做?

我什至不知道从哪里开始,因为甚至没有 web.config 了。如果有人知道或可以弄清楚,请与我们分享。

谢谢

【问题讨论】:

    标签: elmah asp.net-core elmah.mvc


    【解决方案1】:

    ELMAH 不适用于 ASP.NET 5,因为 ELMAH(根据其名称)基于 ASP.NET 4.x 的模块和处理程序(“ELMAH”的“MAH”)。

    在 ASP.NET 5 中,模块和处理程序的替代品称为中间件。

    在 ASP.NET 5 中有一个原型叫做“ELM”(错误日志中间件),它有一些类似于 ELMAH 的特性。您可以在此处查看示例:https://github.com/aspnet/Entropy/tree/dev/samples/Logging.Elm

    【讨论】:

    • 嗯...这看起来更像是 NLog/Log4Net 的替代品,而不是 ELMAH。即更通用的日志记录与未处理的异常。
    • 我会说 ELM 更接近 ELMAH 正在尝试做的事情(尽管 ELMAH 有办法,还有更多功能)。 ELM 捕获应用程序中的所有异常,以及来自新ILogger 界面的所有日志,并将它们显示在可搜索/可过滤的网页中。 ILogger 接口更接近 log4net。
    • 如何保护 ELM 页面?
    • @georgiosd 您可以将身份验证中间件放在其前面以添加任何所需的身份验证和授权。您需要使用 app.Map() 或类似的 API “分叉”中间件管道,并将特定于 ELM 的身份验证中间件和 ELM 页面放入该分叉中。然后,您的应用程序的其余部分将与您拥有的任何其他中间件(例如路由/MVC、诊断页面等)一起位于“主”中间件管道上。
    • @Elion 感谢您的及时回复-您介意添加一个示例吗?读到这让我头疼,我花了两个星期才理解 Github 分叉 :)
    猜你喜欢
    • 2016-05-07
    • 1970-01-01
    • 2015-01-26
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 2015-02-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多