5

我喜欢使用以下格式创建 xml:

XDocument xml = new XDocument(
   new XElement("Root",
      new XElement("A",
         new XAttribute("X", xValue),
         new XAttribute("Y", yValue)),
      new XElement("B",
         new XAttribute("Z", zValue)),
      new XElement("C")));

它看起来很容易阅读并且有点像标签式 XML 文档(在我看来)。StyleCop 对格式非常不满意。我收到很多这样的错误:

SA1116:如果方法参数位于不同的行,则第一个参数必须从方法名称下方的行开始。

SA1118:参数跨越多行。如果参数很短,请将整个参数放在一行中。否则,将参数的内容保存在临时变量中,并将临时变量作为参数传递。

我能做些什么来让 StyleCop 开心并且代码可读?我知道我可以禁用 StyleCop 规则,但团队希望为所有非 XML 创建代码保留这些规则。我可以选择性地抑制以这种方式创建 XML 的每个方法中的规则,但这看起来很痛苦并且变得丑陋。有什么建议么?

4

1 回答 1

2

是的,我建议如下:

  • 为您的项目创建“默认资源”(右键单击项目、属性、资源)
  • 在那里创建一个新的字符串资源,将名称设置为 DefaultXmlDoc 或其他东西
  • 将值设置为以下文本:
    <Root>
    <A X="1" Y="2" />
    <B Z="3" />
    <C />
    </Root>
  • 将您的程序更改为以下单行:
    XDocument xml = XDocument.Parse( Properties.Resources.DefaultXmlDoc );

我相信这可以实现您的所有目标。

于 2010-08-06T17:17:56.773 回答