Это отлично работает:
XDocument xdoc = new XDocument(
new XDeclaration("1.1", "UTF-8", "yes"),
new XProcessingInstruction("foo", "bar"),
new XElement("test"));
Однако, если я изменю его, чтобы передать "params array" явно как массив:
object[] content = new object[] {
new XDeclaration("1.1", "UTF-8", "yes"),
new XProcessingInstruction("foo", "bar"),
new XElement("test")
};
xdoc = new XDocument(content);
Сбой:
System.ArgumentException: символы небезопасного пробела не могут быть добавлены в контент.
Разве эти два примера не эквивалентны? Что здесь происходит?