我们在页面后面的代码中使用以下代码
[CreateNew]
public AdminController Controller { get; set; }
以及控制器类中的以下代码
[ServiceDependency]
public IAdminService Adminervice { get; set; }
这适用于普通的aspx页面。
我想在我的应用程序中审核会话启动事件,并且我正在使用global.asax事件来执行此操作。
但是控制器尚未在此处实例化
protected override void PrePageExecute(System.Web.UI.Page page)
{
if (Controller == null)
{
// controller is null...
}
}
如何使用[CreateNew]属性从全局页面访问控制器?
答案 0 :(得分:0)
我没有弄清楚如何访问控制器,但我可以通过以下代码片段获得服务。
[ServiceDependency]
public ICommonService CommonService { get; set; }
protected override void PrePageExecute(System.Web.UI.Page page)
{
if (Session.IsNewSession)
{
if (CommonService == null)
{
WebClientApplication.BuildItemWithCurrentContext(this);
}
CommonService.AuditTrailLogin(true);
}
}