2008-07-21

如何在 web.config 裡讀入另一個外部設

有大概 study 過 .NET 的人應該都知道在 .NET 上會有一支叫 web.config 的檔案,這支以 XML 的方式描述,裡面定義了 .NET 程式執行階段的一些變數宣告還有環境設定,這部份簡單來說就像我們在寫 PHP 時會定義一支像是 config.php 同樣的用意(只是 web.config 更複雜點)

而前陣子需要在 .NET 環境裡食作一個在 PHP 的機制,透過 cron 另外組出一支 php 的 DB 設定檔,然後在 config.php 最開頭 require,以便讓 config.php 裡的 define 值可以用那支動態組成的 php(註一)

實作:

首先我們要產生一支類似的外部設定檔樣板,其樣式如下
<?xml version="1.0" encoding="utf-8"?>
<appSettings>(註二)
<add key="MY_KEY" value="MY_VALUR" />
</appSettings>
之後在原本的 web.config 裡做以下調整
<appSettings> -> <appSettings file="db_config.config">
之後在原本的 web.config 裡做以下調整


這樣就可以在程式裡使用到該外部設定檔裡的值,而且也可以再以 .NET 寫一支類似的程式產生設定檔並 compiler 成 .exe,再以 windows server 的排程功能將它排程

註一:
web.config 的 <appsettings> 這個 tag 裡定義的事,簡單來說就是我們會在 config.php 裡幹的事是一樣的

參考資料:請看這裡

沒有留言: