我是 Asp.Net 的新手,我想知道是否可以在设计时动态地在 web.config 文件中的 <system.web> 和 <system.webServer> 中添加处理程序标记,以便我可以为图片。
我需要此信息,因为我正在 ac# 项目中创建图像。我将编译它并为项目生成一个 dll。通过使用这个 dll,我想在不同的项目中使用图像。因此,当我在任何新项目中添加对 dll 的引用时,我想在设计时添加处理程序,而不是在 web.config 文件中手动更改它。
我是 Asp.Net 的新手,我想知道是否可以在设计时动态地在 web.config 文件中的 <system.web> 和 <system.webServer> 中添加处理程序标记,以便我可以为图片。
我需要此信息,因为我正在 ac# 项目中创建图像。我将编译它并为项目生成一个 dll。通过使用这个 dll,我想在不同的项目中使用图像。因此,当我在任何新项目中添加对 dll 的引用时,我想在设计时添加处理程序,而不是在 web.config 文件中手动更改它。
您可以使用 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));
}
}
}