如何使用MSBuild将链接文件添加到csproj文件。 (3.5框架)

我正在尝试使用MSBuild将链接文件添加到我的.csproj文件中。

这是.Net Framework 3.5(而不是4.0)。 我提到这是因为我看到了一些试图操纵XML的4.0特定内容。

这是我开始的:

     3.5           

这就是我想要的:

      3.5           MyLinkFile.ext     

我有:

  • MSBuild.Community.Tasks.dll

  • MSBuild.ExtensionPack.dll

可用。

任何具体的帮助?

使用’MSBuild.ExtensionPack.Xml.XmlFile’之的一行评论将没有用。

但我非常感谢任何指针或编码示例。

好吧,我打开了“MSBuild.ExtensionPack.Xml.XmlFile(.cs)”的代码,环顾四周。 谢谢开源。

我想通了……你要“建立起来”。 而且我不得不添加一些voodoo技巧(下面是“MyUniqueKeyHelper123”)。

我会在这里发帖。 如果您在使用“MSBuild.ExtensionPack.Xml.XmlFile(.cs)”时遇到问题,请获取源代码并查看它。 您可以通过查看方法来弄清楚如何设置属性。 起初它有点棘手,但可以解决问题。

  .\ExtensionPackFiles $(MSBuildExtensionPackPath)\MSBuild.ExtensionPack.dll         peanut http://schemas.microsoft.com/developer/msbuild/2003            

您是否可以使用以下内容?

 using System; using System.Text; using Microsoft.Build.BuildEngine; namespace ConsoleApplication11 { class Program { static void Main(string[] args) { var fullPathName = @"PathToProjectFile\Project.csproj"; Project project = new Project(); project.Load(fullPathName); var itemGroup = project.AddNewItemGroup(); var buildItem = itemGroup.AddNewItem("Content", @"..\..\SomeFunFolder\MyLinkFile.ext"); buildItem.SetMetadata("Link", "MyLinkFile.ext"); project.Save(fullPathName, Encoding.UTF8); } } }