Table of Contents

Class XmlSettingsSerializer

Namespace
CarinaStudio.Configuration
Assembly
CarinaStudio.AppBase.Configuration.dll

Implementation of ISettingsSerializer which serialize settings to XML format data.

public class XmlSettingsSerializer : ISettingsSerializer
Inheritance
XmlSettingsSerializer
Implements
Inherited Members
Extension Methods

Fields

BooleanType

Type name of bool.

protected const string BooleanType = "Boolean"

Field Value

string

ByteType

Type name of byte.

protected const string ByteType = "Byte"

Field Value

string

DateTimeType

Type name of DateTime.

protected const string DateTimeType = "DateTime"

Field Value

string

Default

Default instance.

public static readonly XmlSettingsSerializer Default

Field Value

XmlSettingsSerializer

DoubleType

Type name of double.

protected const string DoubleType = "Double"

Field Value

string

Int16Type

Type name of short.

protected const string Int16Type = "Int16"

Field Value

string

Int32Type

Type name of int.

protected const string Int32Type = "Int32"

Field Value

string

Int64Type

Type name of long.

protected const string Int64Type = "Int64"

Field Value

string

SingleType

Type name of float.

protected const string SingleType = "Single"

Field Value

string

StringType

Type name of string.

protected const string StringType = "String"

Field Value

string

Methods

Deserialize(Stream, out IDictionary<SettingKey, object>, out SettingsMetadata)

Deserialize keys and values of settings.

public void Deserialize(Stream stream, out IDictionary<SettingKey, object> values, out SettingsMetadata metadata)

Parameters

stream Stream

Stream to read serialized settings.

values IDictionary<SettingKey, object>

Deserialized keys and values.

metadata SettingsMetadata

Deserialized metadata.

GetTypeName(Type)

Get type name of given type of value.

protected virtual string GetTypeName(Type valueType)

Parameters

valueType Type

Type of value.

Returns

string

Type name.

IsXmlValueArray(XmlNode)

Check whether given XML node represents an array of values or not.

protected bool IsXmlValueArray(XmlNode xmlNode)

Parameters

xmlNode XmlNode

XML node.

Returns

bool

True if XML node represents an array of values.

ReadXmlValue(XmlNode, string)

Read setting value from XML value according to type name. XML value will be treated as string or string array if type name cannot be recognized.

protected virtual object ReadXmlValue(XmlNode xmlValue, string typeName)

Parameters

xmlValue XmlNode

XML value.

typeName string

Type name.

Returns

object

Read setting value.

ReadXmlValueArray(XmlNode, string, IList)

Read setting value as array from XML value.

protected void ReadXmlValueArray(XmlNode arrayNode, string typeName, IList list)

Parameters

arrayNode XmlNode

XML node represents an array of values.

typeName string

Type name.

list IList

IList to receive read values.

ReadXmlValueAsString(XmlNode)

Read setting value from XML value as string or string array.

protected object ReadXmlValueAsString(XmlNode xmlValue)

Parameters

xmlValue XmlNode

XML value.

Returns

object

Setting value as string or string array.

Serialize(Stream, IDictionary<SettingKey, object>, SettingsMetadata)

Serialize settings.

public void Serialize(Stream stream, IDictionary<SettingKey, object> values, SettingsMetadata metadata)

Parameters

stream Stream

Stream to write serialized settings.

values IDictionary<SettingKey, object>

All keys and values.

metadata SettingsMetadata

Metadata.

WriteXmlValue(XmlWriter, object)

Write setting value as XML value.

protected virtual void WriteXmlValue(XmlWriter writer, object value)

Parameters

writer XmlWriter

XmlWriter.

value object

Setting value.