2014-03-26 69 views
0

我總是懷疑如何在我們運行Windows應用程序時形成路徑。從app.config窗口應用程序的FILE路徑

我已經設置這樣的關鍵在我的應用程序配置

<add key="LogFilePath" value="..\Log\" /> 

,當我從我的本地機器上運行此,它提供了從Windows應用程序運行所在的路徑。

但是,當我從TFS運行相同的項目,並且當我嘗試創建日誌文件夾內的文件,而不是項目映射的路徑它給出了完全不同的路徑。

誰能告訴我爲什麼會發生這種情況?

回答

0

保存相對路徑的配置以及您想用它做這樣

string fullPath = Path.Combine(Application.StartupPath,configPath); 
+0

嗨,這將返回從哪裏開始的應用程序的權利?怎麼樣Directory.GetParent(Path.GetDirectoryName(Application.StartupPath))+從app.config的路徑? –

+0

是的,它會的。你不想要應用程序的啓動路徑嗎? – Ehsan

+0

我已包含在我的代碼中。請參閱我的評論帖子 –

0

應用程序設置都非常簡單。

將您的屬性添加到您的App.Config應用程序設置中,例如,

<appSettings> 
<add key="LogFilePath" value="C:\Jaspreet_Files\LoadOrgInPortal.txt" /> 
</appSettings> 

並讀取它們,例如,

var sqlConnectionString = System.Configuration.ConfigurationSettings.AppSettings["LogFilePath"]; 
0

我想這個問題是在價值..

<add key="LogFilePath" value="..\Log\" /> 

這似乎是一個相對路徑,嘗試get full path第一寫入前,看看它是寫作,它應該。