【问题标题】:Create a custom NANT file with C#使用 C# 创建自定义 NANT 文件
【发布时间】:2012-05-17 14:44:05
【问题描述】:

我想创建自定义 NANT 文件。为此,我使用 C# 使用来自用户的输入创建一个“.build”文件,我希望创建一个自定义构建。我已经有一个构建文件,但是每次我创建一个新项目时,我都必须创建一个新的构建文件,所以我只想将一些信息输入到 C# 表单中,然后该文件将自动生成。

我尝试使用 XmlTextWriter 女巫适用于我的构建文件的标题,但是当我进入这样的行时遇到问题:

<property name= "name" value = "test"/> . 

用 XmlTextWriter 行是这样的:

<description>This is a test.</description> .

所以我想知道如何编写我的 NANT 脚本。

它不一定是 XmlTextWrite ...

  • 编辑-

我找到了办法:

textWriter.WriteRaw("<property name = \"project.name\" value=\"" + projectName + "\" />");

结果:

<property name = "project.name" value="test" />

我必须输入“原始”,但总比没有好。我仍然愿意接受更好的方法!

谢谢!

【问题讨论】:

  • 如果 projectName 中有一个特殊字符...例如 >、
  • WriteRaw 采用特殊字符。但是你的回答仍然是一个更好的方法。

标签: c# build nant


【解决方案1】:

我强烈建议不要通过非 XML 特定的文本编写器手工制作自己的 XML。除其他外,这将导致转义字符的痛苦。

我可能遗漏了一些东西,但您应该可以使用 XmlTextWriter 来解决这个问题。这是未经测试的,但您应该了解总体思路:

XmlTextWriter writer = new XmlTextWriter(...);

writer.StartDocument();

writer.WriteStartElement("property");
writer.WriteAttributeString("name", "project.name");
writer.WriteAttributeString("value", projectName);
writer.WriteEndElement();

writer.EndDocument();
writer.Close();

【讨论】:

  • 也取决于您的目标,您可能会成功滚动自己的 nant 扩展而不是动态生成构建文件
猜你喜欢
  • 1970-01-01
  • 2021-08-19
  • 1970-01-01
  • 2010-12-03
  • 2019-08-15
  • 1970-01-01
  • 2010-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多