使用簡介
XML 格式實體類的實現和使用
一個簡單的實體類例子:
using System;
using System.Collections.Generic;
using System.Text;
using System.XML.Serialization;
using ConfigurationPattern;
namespace CfgSample
{
[ConfigurationPattern(TPattern.XML)]
public class MyXMLCfg: Configuration
{
const String MY_XML_CFG_PATH = @"\myxmlcfg.XML";
public MyXMLCfg()
: base(MY_XML_CFG_PATH)
{
Random rand = new Random();
m_RandId = rand.Next();
}
private String m_Name;
private int m_RandId;
Public Propertys#region Public Propertys
public String Name
{
get
{
return m_Name;
}
set
{
m_Name = value;
}
}
[ConfigurationIgnore]
[XMLIgnore]
public int RandId
{
get
{
return m_RandId;
}
set
{
m_RandId = value;
}
}
#endregion
}
}
這個實體類包括兩個公有屬性Name 和 RandId,其中RandId不希望配置到文件中,所以用 [ConfigurationIgnore] 和 [XMLIgnore]兩個屬性描述這個字段。其中[ConfigurationIgnore] 屬性是本組件提供的屬性,可以用於描述任何配置模式下的字段屬性。
配置文件名在實體類構造中指明,如果你不希望在構造中指明,你也可以在打開實體類之前的任何時候通過FileName屬性動態賦值。
使用實體類的示例代碼:
MyXmlCfg myXmlCfg = new MyXMLCfg();
myXMLCfg.Open();
Console.WriteLine(String.Format("Name:{0} RandId:{1}", myXmlCfg.Name, myXMLCfg.RandId));
myXMLCfg.Close();
使用實體類很簡單,只要打開(Open)實體類,組件會自動將配置文件中的數據讀取到實體類中。你可以直接使用。
如果你修改了實體類中的公共屬性,比如你調用了如下語句 myXMLCfg.Name="MyName",關閉(Close)實體類時,組件會自動將新的配置寫入到配置文件中。
你也可以設置你的實體類為制度,myXMLCfg.ReadOnly = true; 只讀的實體類,在關閉時不保存配置。