2009-09-30 53 views
2

我的項目中有一個App.config文件,它在構建時被複制到NameOfExe.exe.config。我的軟件的用戶有時需要編輯此文件,但他們可能不熟悉.NET如何執行操作(或者計算機通常如何操作)。我認爲使用這樣的文件名可能會讓他們感到困惑,擴展名爲.exe.config等。如何更改App.config被重命名爲?

如何爲此複製文件指定新名稱(刪除.exe位)?我應該使用自定義生成命令嗎?另外,.NET是否會接受配置文件,還是需要命名方案?

編輯:爲了響應重新考慮的建議...應用程序充當服務或控制檯應用程序,因此沒有GUI來編輯設置。配置文件包含用於連接到數據庫和API服務的設置。在每個客戶的初始設置(這由我完成)後,這些值不需要改變。在不太可能發生的情況下,需要更改值,客戶需要打電話給我以獲取新的連接詳細信息,以便我可以通過編輯以及如何操作來指導他們。當我告訴客戶他們需要打開名爲「.exe.config」的文件時,我只想避免任何混淆,此時他們會錯誤地啓動「.exe」文件。此外,如果他們需要啓動.exe文件並啓用「隱藏已知文件類型的擴展名」,則可能會嘗試打開配置文件,然後打電話給我,想知道爲什麼他們會在記事本窗口中看到奇怪的文本。

當然,這不是必需的,但我喜歡提前計劃。

+0

是的,考慮一個基本的文本文件,而不是至少加載。 –

+0

如果功能已經包含在.NET框架中,爲什麼我應該重新發明輪子? –

+0

因爲「讓新手用戶配置我的.NET應用程序」的功能沒有被構建到框架中。你真的想要一個會被一個文件擴展名困擾的人搞砸了數據庫連接字符串,程序集引用,smtp設置等嗎? –

回答

6

psychotik同意,你應該考慮讓你的用戶亂用軟件的配置文件的概念,但你可以用這個替代:

有可能參考外部配置文件

<appSettings file="otherlessconfusingname.config" /> 
+0

+1大衛布朗編輯後,你的答案似乎是最合適的。 –

+0

這是可行的,是的。但是,原來的問題仍然存在(可能與文件名稱混淆),並增加了兩個不同的配置文件。 –

+0

不是如果你只是依賴於其他配置文件的用戶配置的東西?你可以放任何你喜歡的東西,以減少混淆。這正是你要求的答案。這裏唯一的選擇是在其他文件的應用程序中進行設置加載。但是與這種方法有什麼不同? –

2

在別人告訴你如何改變它(這是可能的而且非常簡單)之前,我建議你重新考慮一下。

如果您的用戶是其他開發人員類型的人,則使用.exe.config將會非常好。 如果他們是消費者,他們不應該混淆.exe.config或其他類似xml的文件。您應該爲他們配置應用程序(設置)提供另一種方法。

2

如果您的用戶在文件的名稱或擴展名方面存在問題,他們將如何處理其中的XML?

不要浪費精力去弄清楚你是否可以重命名文件,而是給你的用戶一個很好的GUI,他們可以用它來改變相關的配置。

+0

我編輯了我的問題來進一步解釋。 –

+0

感謝您的詳細解釋。您*可以*開發另一款應用程序來編輯相關配置值,但是從您的場景描述中,這聽起來像投資回報極其糟糕。我投了一個似乎更好地捕捉你所要求的其他答案之一。 –