在Visual Studio 2013中清理解决方案时未删除XML文件

本文关键字:删除 XML 文件 解决方案 Studio Visual 2013 | 更新日期: 2023-09-27 17:49:48

我正在创建保存凭据的XML文件。

  private void CreateCredentialFile()
   {
        string path = @"Assets'CredentialFile.xml";
        XDocument doc = new XDocument(new XElement("ConferenceRooms"));
         XElement newRoom = new XElement("ConferenceRoom",
                                           new XElement("Email",SelectedConfRoom.EmailId),
                                           new XElement("Password", SelectedConfRoom.Password)
                                       );
        doc.Element("ConferenceRooms").Add(newRoom);
        doc.Save(path);
   }

但是如果我清理解决方案意味着这个文件仍然存在于我的输出目录中。我想在清洗溶液时删除这个文件。在清理解决方案时是否有办法删除此文件?

在Visual Studio 2013中清理解决方案时未删除XML文件

Jon Skeet:

Clean解决方案将从先前的构建工件中移除构建。如果在构建目标目录中有任何其他文件(bin和obj)它们可能不会被删除,但是实际的构建工件会被删除。

参考:Visual Studio中构建解决方案、重新构建解决方案和清洁解决方案之间的差异?

它的实际意思是,只要你在应用程序的输出文件夹中手动创建文件,当使用Clean Solution命令时,它们将不会被删除,而只会删除那些由Visual Studio MS-BUILD生成的文件。

但是,您可以将以下部分添加到所讨论的项目中,以便执行自定义清理:

<Target Name="AfterClean">
    <Delete Files="$(TargetDir)'*.txt" />
</Target>

有几种方法可以处理这个问题。如果您的目标是在构建解决方案之前删除XML文件,那么可以使用Pre-build事件。导航到您的项目属性> Compile选项卡> Build Events(右下角按钮)。在Build Events窗口中,您可以添加命令或脚本来执行必要的预构建清理。这是相当灵活的,并且允许您从外部管理不被视为实际项目输出的一部分的资源文件。