C#中的Microsoft.VisualBasic.FileIO.FileSystem等价

Kiq*_*net 5 c# vb.net equivalence-classes

我使用VS 2008,.net 3.5,C#项目.我需要在功能上像Microsoft.VisualBasic.FileIO.FileSystem.DeleteDirectory一样.

任何人都说在C#中引用Microsoft.VisualBasic通常是不受欢迎的.在C#代码中与VB的任何关联都让我觉得不可取.

使用FileSystem类,这是一个非常好的解决方案,但我不想引用Microsoft.VisualBasic库.那个我会避免的.

     private static void DeleteDirectory(string destino)
            {
    //UIOption Enumeration. Specifies whether to visually track the operation's progress. Default is UIOption.OnlyErrorDialogs. Required.

    //RecycleOption Enumeration. Specifies whether or not the deleted file should be sent to the Recycle Bin. Default is RecycleOption.DeletePermanently.

    //UICancelOption Enumeration. Specifies whether to throw an exception if the user clicks Cancel. Required.
                Microsoft.VisualBasic.FileIO.FileSystem.DeleteDirectory(destino, 
Microsoft.VisualBasic.FileIO.UIOption.OnlyErrorDialogs, 
Microsoft.VisualBasic.FileIO.RecycleOption.DeletePermanently, 
Microsoft.VisualBasic.FileIO.UICancelOption.ThrowException);
                //Directory.Delete(destino, true);
            }
Run Code Online (Sandbox Code Playgroud)

其他示例: 如何将文件放在回收站而不是删除?

Microsoft.VisualBasic.FileIO.FileSystem.DeleteFile(file.FullName,
    Microsoft.VisualBasic.FileIO.UIOption.OnlyErrorDialogs,
    Microsoft.VisualBasic.FileIO.RecycleOption.SendToRecycleBin);
Run Code Online (Sandbox Code Playgroud)

Jet*_*hro -1

你可以尝试以下方法。

System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("C:\\MyDirectoryToDelete");
di.Delete(true);
Run Code Online (Sandbox Code Playgroud)

甚至

System.IO.Directory.Delete("Path goes here");
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。