C# 从自定义程序集中使用自定义httphandler

C# 从自定义程序集中使用自定义httphandler,c#,asp.net,config,C#,Asp.net,Config,是否可以在独立程序集中注册自定义httphandler?我正在编写一个使用httphandlers执行AJAX的控制工具包,我希望对web开发人员尽可能少地使用该工具包。将会有很多处理程序,我不希望开发人员必须在web.config中注册它们 它们可以在程序集中直接引用吗 是的,在: <system.web> <httpHandlers> </httpHandlers> <system.web> <system.webServer

是否可以在独立程序集中注册自定义httphandler?我正在编写一个使用httphandlers执行AJAX的控制工具包,我希望对web开发人员尽可能少地使用该工具包。将会有很多处理程序,我不希望开发人员必须在web.config中注册它们

它们可以在程序集中直接引用吗

是的,在:

<system.web>
   <httpHandlers>
   </httpHandlers>
<system.web>
<system.webServer>
   <handlers>
   </handlers>
<system.webServer>

部分;只需提供完全量化的名称作为类型。你必须做这个登记;否则,你不能在应用程序中使用它们。必须将处理程序映射到URL,或将处理程序工厂映射到文件扩展名


嗯。

我不确定这是否可行,但我肯定认为这是错误的方法

如果您正在开发自己的工具包,那么您可以创建一个http处理程序,该处理程序根据您想要的逻辑识别和调用其他http处理程序:

public class MyToolkitHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        IHttpHandler handler = Toolkit.GetHandler();
        if (handler != null)
        {
            handler.ProcessRequest(context);
        }
    }
}

这意味着您只需要在web.config中注册一个处理程序。

谢谢,这正是我所需要的——我真的很想得到正确的前期设计@Rich如果您熟悉Asp.NETMVC,那么可以从中寻找灵感。