程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 一個用C#編寫的自動讀寫配置文件的開源組件(2)

一個用C#編寫的自動讀寫配置文件的開源組件(2)

編輯:關於C語言

使用簡介

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; 只讀的實體類,在關閉時不保存配置。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved