0

在我将 JSNLog 包安装并引用到我的 MVC 项目中后,每次单击链接时都会遇到错误。

例如,

<a href="@Url.Action("Bar", "Foo")">Link</a>

通常会产生

<a href="/Foo/Bar">Link</a>

但是在我开始使用 JSNLog 之后,它现在会产生

<a href="/jsnlog.logger?action=Bar&controller=Foo">Link</a>

这将指向一个链接

http://localhost:51745/jsnlog.logger?action=Bar&controller=Foo

这表明

异常详细信息:System.NullReferenceException:对象引用未设置为对象的实例。

我相信 JSNLog 会在有机会访问服务器时尝试将异常或日志事件发回服务器。
我是否缺少使此功能起作用的东西?

4

2 回答 2

4

这个bug在原帖创建的时候就存在了,现在已经在几个版本之前修复了(我是JSNLog的作者)。

于 2014-03-19T01:54:37.503 回答
3

这实际上是由他们在 App_Start 中注入的 Ignore 路由引起的,将其移动到您的路由集合中手动修复了该问题。发生这种情况是因为您没有为其余控制器手动定义路由,因此 .net 尝试解析为它发现定义的第一个。

在 App_Start\JSNLogConfig.cs 中取出

RouteTable.Routes.Insert(0, new Route("jsnlog.logger/{*pathInfo}", new StopRoutingHandler()));

在 RouteConfig.cs 添加

routes.IgnoreRoute("jsnlog.logger/{*pathInfo}");

你所有的其他路线应该开始正常工作。

于 2013-10-15T21:11:20.977 回答