2011-02-18 103 views
0

是否可以在独立装配体中注册自定义装配体?我正在编写一个使用httphandlers来执行AJAX的控件工具包,我希望尽可能使用该工具箱作为Web开发者的低摩擦力。将会有相当多的处理程序,我不希望开发人员必须在web.config中注册它们。使用自定义装配体中的自定义装配体

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

回答

1

我不确定这是否可能,但它肯定会让我误会为错误的做法。

如果您正在开发自己的工具,那么你可以反而让识别,并呼吁任何你想要的逻辑基于其他HTTP处理程序一个HTTP处理程序:

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

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

+0

谢谢你,正是我所需要的 - 这是我真正想要的正确设计! – 2011-02-18 13:27:40

0

是的,在:

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

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

HTH。