我在這種情況下的首選是創建一個DataSet與DataTables的配置數據以良好的關係方式排列 - 然後使用DataSet.WriteXML()將其保存到配置文件。
然後再次加載它,你只需要使用DataSet.ReadXML(),它回到了一個很好的可查詢對象中。
這是一個示例配置文件,我的應用程序允許用戶在文本編輯器窗口中編輯:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!--****************************************************************
Config File: FileToExcel_test.cfg
Author: Ron Savage
Date: 06/20/2008
Description:
File to test parsing a file into an Excel workbook.
Modification History:
Date Init Comment
06/20/2008 RS Created.
******************************************************************-->
<!--********************************************************************
Global Key Definitions
********************************************************************-->
<config key="sqlTimeout" value="1800"/>
<config key="emailSMTPServer" value="smtp-server.austin.rr.com"/>
<config key="LogFile" value="FiletoExcel_test_{yyyy}{mm}{hh}.log"/>
<config key="MaxEntries" value="1"/>
<!--********************************************************************
Delimiter Configurations
********************************************************************-->
<config key="pipe" value="|"/>
<!--********************************************************************
Source/Target Entries
********************************************************************-->
<config key="source_1" value="FILE, c:\inetpub\ftproot\filetoexcel.txt, pipe, , , , , "/>
<config key="target_1" value="XLS, REPLACE, c:\inetpub\ftproot\filetoexcel1.xls, , , , , , , ,c:\inetpub\ftproot\filetoexcel_template.xls, ,3"/>
<config key="notify_1" value="store_error, store_success"/>
</configuration>
當我把它加載到DataSet中,所有非註釋標記位於名爲表配置與字段密鑰 & 值。非常容易搜索。
能人實際上神交一個DataSet的XML序列化? – Benoit 2008-10-07 00:27:14
當然,這取決於配置表結構的複雜性。我的配置加載到一個名爲Config的DataTable中,並帶有兩個字段(鍵,值)。我只是使用DataSet讀取它並訪問設置 - 我的應用程序將其加載到文本編輯器中進行編輯。 – 2008-10-07 00:37:18