尝试进行以下转换:
CType(Context.Handler, MyCustomHandler)
但它会引发以下错误。
Unable to cast object of type 'ASP.MyWebForm_aspx' to type 'MyCustomHandler'.
甚至“Context.Handler”和“MyCustomHandler”都是 IHttpHandler 类型。
** MyCustomHandler 实现 IHttpHandler。
谢谢。
尝试进行以下转换:
CType(Context.Handler, MyCustomHandler)
但它会引发以下错误。
Unable to cast object of type 'ASP.MyWebForm_aspx' to type 'MyCustomHandler'.
甚至“Context.Handler”和“MyCustomHandler”都是 IHttpHandler 类型。
** MyCustomHandler 实现 IHttpHandler。
谢谢。
我认为除了接口Handler
公开的内容之外,可能还有更多的方法或属性。IHttpHandler
尝试投射到IHttpHandler
这个应该工作。
我认为您不能在实现接口的两个类之间进行转换,因为您不能在派生自抽象类的两个类之间进行转换,但是您可以将它们都转换为基类或接口
经过几个小时的努力,解决了这个问题。转换是合法的,但我注册的自定义处理程序符合 IIS6 和更早版本。由于我在集成模式下在 IIS7 上本地运行我的网站,它在 下的部分中查找已注册的处理程序,并且该处理程序未在此处注册。有两种可能的解决方案:
1) 在第 2 节中添加自定义处理程序
) 在 II7 中将集成更改为经典模式
我和第二个一起去了。
**这也解决了为什么当我使用 IIS6(经典)而不是本地(具有集成模式的 II7)在服务器上发布时它工作的问题