0
开发了一个MVC3应用程序,用于监视用户何时访问Web服务器上的静态内容,每次都会记录用户的余额。这个逻辑发生在Global.asax的“Application_AuthenticateRequest”事件中(我之前读过这是放置这种逻辑的正确位置)。使用Global.asax的MvcMailer
MvcMailer已经实现向用户发送各种通知(帐户创建,重置密码等)。我们希望实现“低余额”通知,但似乎无法通过“Application_AuthenticateRequest”发送一个通知,因为没有完整的HttpContext可用。 “PopulateBody”被调用时出现的完整错误是:
ArgumentNullException was unhandled by user code.
Value cannot be null.
Parameter name: routeData
任何建议如何解决此问题?正在考虑在Global.asax的其他活动中发送通知,但也需要为静态内容启动......?
在此先感谢!
感谢您的建议。将整个调用移至Application_EndRequest,但在调用“PopulateBody”时仍然出现相同的错误。 FYI堆栈指针是:System.Web.dll中System.Web.Routing.RequestContext.RequestContext(System.Web.HttpContextBase HttpContext的,System.Web.Routing.RouteData的RouteData) –
好的尝试的Application_BeginRequest它基本上会是一个游戏找到正确的方法,因为这个问题似乎在轻微不同的背景下没有得到解决。 –
我遇到同样的问题。我不太了解建议的答案。从来没有听说过_EndRequest等有没有任何示例代码? – mosquito87