Specifies serialization options.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
Namespace: System.Xml.LinqAssembly: System.Xml.Linq (in System.Xml.Linq.dll)
<FlagsAttribute> _
Public Enumeration SaveOptions
[FlagsAttribute] public enum SaveOptions
[FlagsAttribute] public enum class SaveOptions
[<FlagsAttribute>]
type SaveOptions
| Member name | Description | |
|---|---|---|
|
None | Format (indent) the XML while serializing. |
|
DisableFormatting | Preserve all insignificant white space while serializing. |
| OmitDuplicateNamespaces | Remove the duplicate namespace declarations while serializing. |
If you disable formatting when serializing, all insignificant white space in the XML tree is serialized as is. If you do not disable formatting, then all insignificant white space in the XML tree is discarded, and the XML is formatted (indented) as it is serialized.
This type allows you to control how LINQ to XML handles white space when serializing. For more information, see Preserving White Space while Loading or Parsing XML and Preserving White Space While Serializing.
The following example shows two ways to serialize. The first preserves insignificant white space in the XML tree. The second serializes the XElement with formatting.
string str; XElement root = XElement.Parse(@"<Root> <Child> Text </Child> </Root>"); root.Save("Root.xml", SaveOptions.DisableFormatting); str = File.ReadAllText("Root.xml"); Console.WriteLine(str); Console.WriteLine("====="); root.Save("Root.xml", SaveOptions.None); str = File.ReadAllText("Root.xml"); Console.WriteLine(str);
Dim str As String Dim root As XElement = <Root><Child> Text </Child></Root> root.Save("Root.xml", SaveOptions.DisableFormatting) str = File.ReadAllText("Root.xml") Console.WriteLine(str) Console.WriteLine("=====") root.Save("Root.xml", SaveOptions.None) str = File.ReadAllText("Root.xml") Console.WriteLine(str)
This example produces the following output:
<?xml version="1.0" encoding="utf-8"?><Root><Child> Text </Child></Root> ===== <?xml version="1.0" encoding="utf-8"?> <Root> <Child> Text </Child> </Root>
.NET Framework
Supported in: 4, 3.5.NET Framework Client Profile
Supported in: 4, 3.5 SP1Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.