2014-09-27 72 views
0

我的问题是,是否有类似于类级别位置的另一种方式,我可以执行Global.c中的所有应用程序方法,例如“Application_PreRequestHandlerExecute”oal是或“Application_Start “?主要目标是我想将所有这些应用程序方法隐藏到应用程序的编译后的dll中,并将它们从Global.cs中取出。ASP.NET Global.asax Application_PreRequestHandlerExecute

谢谢

回答

1

您无法控制单个aspx /单个类级别的应用程序执行流程。因为对于所有类,都有单个应用程序,并通过请求管道(预请求处理程序,请求等)。这就是为什么我们有HTTPModule来拦截那些管道事件。

但无论如何,我认为你可以在这些事件中应用过滤器,如果请求的是abc.aspx,那么只能为该类执行XYZ。

下面的链接,可能会更有帮助 - http://blogs.msdn.com/b/tmarq/archive/2007/08/30/iis-7-0-asp-net-pipelines-modules-handlers-and-preconditions.aspx

0

你可以把你在Global.ascx方法为调用在DLL中暴露的API“单行”。例如Application_Start()可以拨打myClass.ApplicationStart()Application_PreRequestHandlerExecute可以拨打myClass.PreRequestHandlerExecute。只需在您的应用程序名称空间中定义public static myClass并决定您的API。然后在Global.cs中导入myClass命名空间。