在 asp.net 2 中,删除文件夹会导致应用程序重新启动。但是今天发现asp.net 4中已经不存在这种行为了?我找不到有关此的任何信息。谁能告诉我这是不是真的?如果是的话,那就太棒了!我讨厌asp.net 2中的这个应用程序重启行为。你可以试试这个:
在 asp.net webforms (.net 3.5) 中调试以下代码,您将捕获 ThreadAbortException。但是当你在 asp.net webforms (.net 4) 中调试它时,你不会捕捉到任何异常;一切都很好。我认为我得到 ThreadAbortException 的原因是我删除了线程中的一个目录。然后应用程序重新启动,然后线程被中止。(环境:Win8、VS2012、IIS Express)
protected void Page_Load(object sender, EventArgs e)
{
var thread = new Thread(() =>
{
var folderPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data\\Test");
var filePath = Path.Combine(folderPath, "test.txt");
if (Directory.Exists(folderPath))
{
Directory.Delete(folderPath, true);
}
Directory.CreateDirectory(folderPath);
System.IO.File.WriteAllText(filePath, "Hello");
try
{
var loop = 100;
while (loop > 0)
{
Thread.Sleep(100);
loop++;
}
}
catch (Exception ex)
{
var msg = ex.Message;
}
});
thread.Start();
Response.Write("Running");
}