Dependency injection Web客户端软件工厂CreateNewAttribute属性在global.asax中不工作

Dependency injection Web客户端软件工厂CreateNewAttribute属性在global.asax中不工作,dependency-injection,global-asax,Dependency Injection,Global Asax,我们正在代码隐藏页面中使用以下代码 [CreateNew] public AdminController Controller { get; set; } 以及控制器类中的以下代码 [ServiceDependency] public IAdminService Adminervice { get; set; } 这对于普通的aspx页面来说非常有效 我想在我的应用程序中审核一个会话启动事件,我正在使用global.asax事件进行审核 但是,控制器尚未在此处实例化 protected ov

我们正在代码隐藏页面中使用以下代码

[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]属性从全局页面访问控制器?

我不知道如何访问控制器,但我可以通过以下代码片段获得服务

[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);
    }
}