【发布时间】:2009-06-04 21:49:49
【问题描述】:
我知道如何使用ConfigurationFileMap 类和ConfigurationManager.OpenMappedMachineConfiguration 从文件中加载Configuration 对象,但是有没有办法只从纯XML 中加载Configuration 对象?
【问题讨论】:
标签: .net configuration
我知道如何使用ConfigurationFileMap 类和ConfigurationManager.OpenMappedMachineConfiguration 从文件中加载Configuration 对象,但是有没有办法只从纯XML 中加载Configuration 对象?
【问题讨论】:
标签: .net configuration
是的。这个帮助类应该允许您从 xml 读取或写入任何对象,包括您的 ConfigurationManager 对象。
public static class XmlUtility
{
/// <summary>
/// Serializes an object to an XML string.
/// </summary>
public static string ToXML(object Obj)
{
Type T = Obj.GetType();
XmlSerializer xs = new XmlSerializer(T);
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
xs.Serialize(ms, Obj);
UTF8Encoding ue = new UTF8Encoding();
return ue.GetString(ms.ToArray());
}
}
/// <summary>
/// Deserializes an object from an XML string.
/// </summary>
public static T FromXML<T>(string xml)
{
XmlSerializer xs = new XmlSerializer(typeof(T));
using (StringReader sr = new StringReader(xml))
{
return (T)xs.Deserialize(sr);
}
}
}
【讨论】: