2014-09-19 43 views
0

我已經構建了一個安裝程序,可以創建網站,應用程序池,然後將該網站分配給應用程序池。作爲這個的一部分,我允許用戶爲各種連接字符串輸入不同的設置(允許開發者將它們設置爲DEV/UAT等)。然後我用用戶輸入的設置修改web.config。因爲這是隻能由一小羣開發者安裝的東西,我並不關心輸入的安全性(我知道他們可以放入任何東西),但更多的是它是否被認爲是不好的做法以這種方式修改web.config?以編程方式更新web.config是不好的做法嗎?

我已經閱讀了關於人們如何做這件事的幾個問題,並且通常在每個人中都有人說這樣做不是個好主意。 this question上的第二個答案指出,這樣做會重新啓動您的應用程序。我可以看到,如果您的用戶正在使用應用程序,這可能會導致問題,但對於我的情況來說,這並不相關。這是做這件事時唯一考慮的理由嗎?

回答

1

當有人在談論有一個asp.net網站更新其自己 web.config中的警告通常應用文件。但據我瞭解,你正在談論從安裝程序更新它,這發生在網站使用之前,所以它應該沒問題。


,當然,想想它的其他方式 - 什麼是你的替代以編程方式處理這些文件?你有任何意味着在你的處置操縱這些文件,在某些情況下,有一些程序打開文件並寫入它?

記事本?這是一個程序。

IIS管理器?這是一個程序。

您的安裝器?這是一個程序。

+0

我以爲是這樣,但是當我開始注意到人們說應該使用其他方法時,懷疑開始蔓延。我仍然懷疑這並不適用於我的情況,但認爲它更好。謝謝。 – sr28 2014-09-19 08:55:35

0

web.config就像.htaccess文件,在wordpress一些插件會相應地自動更新這些文件。
這個鏈接可以幫助你,我也有同樣的問題前些天

Change a web.config programmatically with C# (.NET)

+0

Wordpress如何參與? – Raptor 2014-09-19 08:39:26

+0

謝謝你的回答,但我知道如何去做。這更多的是我是否應該這樣做以及是否有任何缺點。 – sr28 2014-09-19 08:39:42

+0

@Raptor我只是說它和.htaccess一樣,我知道在wordpress中這個文件有問題的改變。簡而言之,它將是**否**(只要需要它就不壞),我認爲如果有些例子對於一些小題目感到遺憾,它會更好。 – andrex 2014-09-19 08:41:43

1

只是一個(也許很明顯)的想法:注意不要覆蓋安裝後添加的任何手動更改。

如果我對配置文件進行了一些自定義更改,我不希望它們被程序覆蓋。這聽起來不像是在你的情況下會發生,所以如果解決方案適用於你,我看不到任何真正的問題。

+0

我同意,雖然這只是通過安裝程序完成,它將首次創建它,所以不會覆蓋任何東西(只是創建它)。 – sr28 2014-09-19 08:56:39

相關問題