在System.IO.Directory.Delete(string,bool)(here)的MSDN文檔中,它說DirectoryNotFoundException
在「path指向文件而不是目錄」時拋出。有關Directory.Delete的MSDN文檔錯誤?
然而,由於拋出IOException以下測試失敗:
[Test]
[ExpectedException(typeof(DirectoryNotFoundException))] // because DeleteDirectory fails on files.
public void DeleteFileWithDeleteDirectoryDirectly()
{
var tempPath = Path.Combine(Path.GetTempPath(), "MyTestDirectory");
Directory.CreateDirectory(tempPath);
string file = Path.Combine(tempPath, "File1235.txt");
CreateDummyFile(file);
Assert.That(File.Exists(file));
Directory.Delete(file, true);
}
與
void CreateDummyFile(string name)
{
FileStream fs = File.Open(name, FileMode.Create, FileAccess.Write, FileShare.ReadWrite);
fs.WriteByte(255);
fs.Close();
}
(TEMPPATH在實際的代碼每次測試後刪除,上述被縮短用於說明)。我的測試是強制這個錯誤是錯誤的還是文檔不正確?
此處不能複製。拋出IOException異常 –
這就是我所說的。 IOException被拋出,但DirectoryNotFoundException是預期的。 – PMF