从ASP.NET应用程序中删除Bin DLL文件?

时间:2014-11-24 12:29:51

标签: c# asp.net

如何从ASP.NET应用程序中删除Bin DLL文件?

当我在IIS 7.5上尝试时,它会说“权限被拒绝”。

我编写了一个代码隐藏脚本,用于从bin目录中删除DLL文件。代码段如下:

string[] filesList = Directory.GetFiles(System.Web.HttpRuntime.BinDirectory, "*.dll");
foreach (string f in filesList)
{
    try
    {
        File.Delete(f);
        app.Context.Response.Write("R: " + f + "\n");
    }
    catch (IOException deleteError)
    {
        app.Context.Response.Write(deleteError.Message);
    }
}

它在VisualStudio IIS Express上运行正常,但在生产IIS 7.5服务器上不起作用。

2 个答案:

答案 0 :(得分:0)

您需要以管理员身份运行IIS,然后重置IIS并暂时停止您的asp.net应用程序,然后您可以打开Bin文件夹并删除DLL。

答案 1 :(得分:0)

默认情况下,IIS会自动监视bin文件夹,对其进行任何更改都会导致应用程序池立即回收。

您可以在IIS管理器中更改此设置:

Application Pools > [Your_App_Pool] > Advance Settings > Disable Recycling for Configuration Changes = True

请参阅TechNet