Используйте перегрузку WriteObject
, которая принимает XmlWriter
, затем передайте ему XmlWriter
, настроенный для получения симпатичного вывода.
public void Save(Stream stream)
{
DataContractSerializer serializer = new DataContractSerializer(typeof(ObservableCollection<PlottingDeviceInfo>));
using (var writer = XmlWriter.Create(stream, new XmlWriterSettings{Indent=true}))
{
serializer.WriteObject(writer, this.Devices);
}
}
Когда вы просто используете Stream
, WriteObject
создает свой собственный, по умолчанию XmlWriter
.XmlWriter
определяет формат и т. Д.