繁体   English   中英

StyleCop使用XDocument / XElement / XAttribute快乐创建Xml

[英]StyleCop happy creation of Xml using XDocument / XElement / XAttribute

我喜欢使用以下格式创建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的每个方法中的规则,但这看起来很痛苦并且变得丑陋。 有什么建议么?

是的,我建议如下:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM