如何使用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); } } }