【发布时间】:2016-12-08 08:36:44
【问题描述】:
我已经编写了一个将列表(包含类对象)序列化为 xml 字符串的方法,但是由于嵌套太多,我无法弄清楚如何格式化我的代码以使其更具可读性。这是xml示例:
<Text>
<Info name="example" language="en-US">example</Info>
<Info name="example" language="en-GB">example</Info>
</Text>
这是(最有可能的)格式非常糟糕的代码:
XDocument xdoc = new XDocument
(
new XElement
("Text",
Infos.Select(item =>
new XElement
("Info",
new XAttribute("name", item.Name),
new XAttribute("language", item.Language),
item.Value)
)
)
);
return xdoc.ToString();
这是一个相当短的示例,但它可能会在未来增长,因此,我想让我的代码更具可读性 - 我该怎么做?
【问题讨论】:
-
这个问题可能更多属于codereview.stackexchange.com
-
我想这是版主可以决定的事情,因为我无法删除和移动这个问题,因为它已经有一个答案。不过,如果模组决定删除这个问题,他/她有权这样做。
-
您应该像格式化典型的 XML 文档一样格式化它。开始和结束标签将在一个缩进级别,它的内容(属性、值和其他元素)将在下一个级别。在这里,这意味着构造函数在一层调用名称,在下一层调用其他参数(内容),然后是与构造函数在同一层次的右括号(或者如果足够短,在最后一项的末尾) .您的方法与MSDN 的建议大相径庭。
-
仅此链接就非常准确地回答了我的问题,谢谢您指出。
标签: c# lambda linq-to-xml