0

开发了一个 MVC3 应用程序,该应用程序监控用户何时访问 Web 服务器上的静态内容,每次借记用户余额。这个逻辑发生在 Global.asax 的“Application_AuthenticateRequest”事件中(我之前读过这是放置这种逻辑的正确位置)。

MvcMailer 已实现向用户发送各种通知(创建帐户、重置密码等)。我们想实现一个“低余额”通知,但似乎无法在“Application_AuthenticateRequest”发送一个通知,因为没有完整的 HttpContext 可用......?调用“PopulateBody”时出现的完整错误是:

ArgumentNullException was unhandled by user code.
Value cannot be null.
Parameter name: routeData

有什么建议可以解决这个问题吗?正在考虑在 Global.asax 的另一个活动中发送通知,但也需要针对静态内容触发...?

提前致谢!

4

1 回答 1

1

您可以在该请求的上下文中设置一些内容,然后在 Application_EndRequest 中读取(或确定)并从那里发送请求。更好的是,只需将其存储在缓存中并在 Application_EndRequest 上查找它,或者如果计数足够高,则在 EndRequest 上进行整个确定,等等。

于 2011-11-01T04:51:14.077 回答