isParameterTrue(string)
如果設置了指定的參數,則返回真,如果沒有設置,則返回假。
清單 2 中的第一部分代碼會檢索不同的鍵值對,并將它們設置到 stateSaver 中。其中包括用戶輸入的數據庫值,如服務器名、數據庫名、用戶 ID、密碼和安裝的目標目錄。當然,在您想要卸載時,這些詳細信息中有一些是至關重要的。您需要將在卸載過程中刪除的數據庫名稱、它的連接字符串等。因此,為了保持安裝的狀態,所有這些 stateSaver 值都由安裝程序儲存在一個名為 *.installstate 的文件中。安裝后,您可以在文件夾中查看該文件。按照這種方式使用文件使您能夠避開注冊表。另外,當您構建真正的安裝程序時,最好明智地選擇使用 stateSaver。如果某個用戶在安裝后刪除了此文件,安裝程序在在卸載過程中就會遇到問題。
清單 2 中的第二部分代碼使用用戶輸入的值來檢查數據庫連接。如果用戶沒有輸入用戶 ID,此步驟就會對一個可信連接進行測試。這不是一個用來辨別集成模式驗證選擇或混合模式驗證選擇的簡便方式。但是,現有用戶界面編輯器中的限制又使得必須這樣做。最終,此部分還會為數據庫創建連接字符串。
清單 2 中的第三部分代碼可在應用程序配置文件中設置連接字符串。此部分會將配置文件加載為一個 XML 文檔,遍歷到 connectionstring 節點,并設置該值。請注意將該文件的路徑放在一起的方式。
清單 2 中的第四部分代碼通過將運行腳本的任務委托給另一個類,來實際創建該數據庫: DatabaseInstaller。
將 DatabaseInstaller.cs(下載資料中的示例文件)復制到您的項目中。DatabaseInstaller 具有兩個構造函數來傳遞用戶輸入的數據庫詳細信息。另外,它還有一個私有構造函數,如清單 3 所示。
清單 3. 從嵌入式資源加載 InstallationFiles.xml。
文章來源于領測軟件測試網 http://www.kjueaiud.com/