На самом деле, я обнаружил, что самая большая проблема с конкатенацией строк заключается не в том, чтобы сделать это правильно с первого раза, а в том, чтобы поддерживать ее правильно во время обслуживания кода . Слишком часто идеально написанный фрагмент XML с использованием строки concat обновляется в соответствии с новым требованием, а код concat строки слишком хрупкий.
Пока альтернативами были сериализация XML и XmlDocument
, я мог видеть аргумент простоты в пользу строки concat. Однако с тех пор XDocument
эт. al., просто нет смысла использовать string concat для построения XML. См. Ответ Сандера о том, как лучше написать XML.
Еще одним преимуществом XDocument
является то, что XML на самом деле является довольно сложным стандартом, и большинство программистов просто не понимают его. В настоящее время я имею дело с человеком, который отправляет мне «XML» с полными значениями атрибутов без кавычек, отсутствующими конечными тегами, неправильной чувствительностью к регистру и неправильным экранированием. Но поскольку IE принимает его (как HTML), это должно быть правильно! Вздох ... Во всяком случае, дело в том, что конкатенация строк позволяет писать что угодно, но XDocument
заставит XML-код, соответствующий стандартам.