0

我是 Asp.Net 的新手,我想知道是否可以在设计时动态地在 web.config 文件中的 <system.web> 和 <system.webServer> 中添加处理程序标记,以便我可以为图片。

我需要此信息,因为我正在 ac# 项目中创建图像。我将编译它并为项目生成一个 dll。通过使用这个 dll,我想在不同的项目中使用图像。因此,当我在任何新项目中添加对 dll 的引用时,我想在设计时添加处理程序,而不是在 web.config 文件中手动更改它。

4

1 回答 1

0

您可以使用 PreApplicationStartMethod 和程序集属性来动态注册,而无需添加到 web.config。将此代码添加到您的外部库中,它应该可以工作。

[assembly: System.Web.PreApplicationStartMethod(typeof(PreApplicationConfiguration), "Configure")]
namespace MyExtrarnalLibrary
{

    public   class PreApplicationConfiguration  {

        public static void Configure()
        { 
            //to register handler - handler must implement IRouteHandler
            RouteTable.Routes.Add(new Route("myspecialurl.asmx",new MyHttpHandler()));
            // if you want to register httpmodule , you can do this.
            Microsoft.Web.Infrastructure.DynamicModuleHelper.DynamicModuleUtility.RegisterModule(typeof(MyHttpModule));    
        }

    } 
}
于 2013-05-28T12:07:19.617 回答