Setup:
我通过 NuGet 在 ASP.NET MVC 4 站点上安装了 ELMAH。
在开发机器上,应用程序安装在根目录下。一切正常,并且样式与 ELMAH 页面通常一样。它总是这样做,我的意思是在开发机器上工作,不是吗?
但在服务器上,该应用程序安装在子文件夹(~/tracker)中。尽管 ELMAH 工作正常,但页面没有样式,导致阅读起来很困难。
问题:
我需要做什么才能使页面具有样式?
据推测,样式来自可以在 web.config 中配置的资源。但如何呢?
Edit:
我发现我遇到了一个高度相关的错误:
System.Web.HttpException: A public action method 'stylesheet' was not found on controller 'Elmah.Mvc.ElmahController'.
路径给出为:
/tracker/elmah/stylesheet
这显然与 ELMAH 页面源中的 Link 标签有关:
<link rel="stylesheet" type="text/css" href="/tracker/elmah/stylesheet" />
但是我该如何配置这个url呢?
你的“elmah.mvc.route”设置是什么?如果从路径中删除“/tracker”,您能看到 elmah 屏幕吗?
开箱即用的 elmah 的路线设置是:
<add key="elmah.mvc.route" value="elmah" />
你的需要是
<add key="elmah.mvc.route" value="tracker/elmah" />
您的路由配置正确地重定向了控制器操作的请求,但 elmah 本身打印样式表地址而不使用您的路由配置,因此您需要告诉它要使用哪个路由/URL 作为其引用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)