在aspx页面中实现接口

时间:2010-02-08 00:14:05

标签: asp.net interface implementation httpmodule web-application-project

由于超出本讨论范围的原因(比如xcopy将aspx页面转换为目录,因此我们不需要进行新的构建),我们希望在aspx页面中实现一个接口。如果是page是myPage.aspx,它通常是codebehind mypage.aspx.cs中的类,它实现了接口。当我做这样的事情时

<%@ Page Language="C#" AutoEventWireup="true"  Inherits="ICustomInterface" %>

我收到错误

Parser Error Message: 'ICustomInterface' is not allowed here because it does not extend class 'System.Web.UI.Page'.

但是,如果没有指定Inherits属性,页面不会抛出错误。因此,默认情况下,当我们未指定Inherits属性时,该网页会继承System.web.UI.Page

我们正在使用VS2008 Web应用程序项目,并没有预编译aspx页面。我们想在HTTPModule(开始请求)中拦截对此页面的请求,如果请求是ICustomInterface类型的页面,我们希望以不同方式处理它。

如何做到这一点?

1 个答案:

答案 0 :(得分:3)

可能是因为Inherits参数需要基类,而不是接口。

您也许可以尝试创建一个继承自System.Web.UI.Page的辅助类,并实现您需要的接口。

虽然,我只是在猜这个。