NetDataContractSerializer.NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector) Constructor

Initializes a new instance of the NetDataContractSerializer class with the supplied context data, and root name and namespace (as XmlDictionaryString parameters); in addition, specifies the maximum number of items in the object to be serialized, and parameters to specify whether extra data found is ignored, assembly loading method, and a surrogate selector.

Namespace: System.Runtime.Serialization
Assembly: System.Runtime.Serialization (in system.runtime.serialization.dll)

public NetDataContractSerializer (
	XmlDictionaryString rootName,
	XmlDictionaryString rootNamespace,
	StreamingContext context,
	int maxItemsInObjectGraph,
	bool ignoreExtensionDataObject,
	FormatterAssemblyStyle assemblyFormat,
	ISurrogateSelector surrogateSelector
)
public NetDataContractSerializer (
	XmlDictionaryString rootName, 
	XmlDictionaryString rootNamespace, 
	StreamingContext context, 
	int maxItemsInObjectGraph, 
	boolean ignoreExtensionDataObject, 
	FormatterAssemblyStyle assemblyFormat, 
	ISurrogateSelector surrogateSelector
)
public function NetDataContractSerializer (
	rootName : XmlDictionaryString, 
	rootNamespace : XmlDictionaryString, 
	context : StreamingContext, 
	maxItemsInObjectGraph : int, 
	ignoreExtensionDataObject : boolean, 
	assemblyFormat : FormatterAssemblyStyle, 
	surrogateSelector : ISurrogateSelector
)
Not applicable.

Parameters

rootName

An XmlDictionaryString that contains the root element of the content.

rootNamespace

An XmlDictionaryString that contains the namespace of the root element.

context

A StreamingContext that contains context data.

maxItemsInObjectGraph

The maximum number of items in the graph to serialize or deserialize.

ignoreExtensionDataObject

true to ignore the data supplied by an extension of the type; otherwise, false.

assemblyFormat

A FormatterAssemblyStyle enumeration value that specifies a method for locating and loading assemblies.

surrogateSelector

An implementation of the IDataContractSurrogate to handle the legacy type.

Exception typeCondition

ArgumentNullException

maxItemsInObjectGraph value is less than 0.

The XmlDictionaryString can be used to optimize performance when the same set of strings is used across object instances.

The ignoreExtensionDataObject parameter is used when the IExtensibleDataObject interface is implemented in the class that that is being serialized or deserialized.

The following example creates an instance of the NetDataContractSerializer specifying the XML element name and namespace (as XmlDictionaryString arguments) to expect when deserializing. The code also sets the ignoreExtensionDataObject, and specifies an implementation of the ISurrogateSelector interface to handle to assist the serializer when selecting a surrogate (for deserializing legacy types).

public static void Constructor7()
{
    // Create an instance of the StreamingContext to hold
    // context data.
    StreamingContext sc = new StreamingContext
        (StreamingContextStates.CrossAppDomain);

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create an instance of a class that implements the 
    // ISurrogateSelector interface. The implementation code
    // is not shown here.
    MySelector mySurrogateSelector = new MySelector();

    NetDataContractSerializer ser =
        new NetDataContractSerializer(
        name_value,
        ns_value,
        sc,
        int.MaxValue,
        true,
        FormatterAssemblyStyle.Simple,
        mySurrogateSelector);

    // Other code not shown.
}

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0

Community Additions

ADD
Show: