2012-04-19 2 views
1

にハードフォルダパスを削除します。私はフォルダを参照しています私のプロジェクトではWPF

string path=Path.Combine(@"E:\Per\kamlendra.sharma\Windows\main\software\my.software\my.software.Server\Resources", string.Format("LocalizationDictionary.{0}.xaml", SelectedNewLanguage.culture)); 

しかし、私はこのアドレスハードコードにしたくない:

@"E:\Per\kamlendra.sharma\Windows\main\software\my.software\my.software.Server\Resources"

ことができます誰でもしてくださいより良いアプローチを提案しますか?

+1

アプリケーション・パス似IO.Path.GetDirectoryName(Application.ExecutablePath)を取得したいですか? – Cynede

+0

結果のパスをどのように使用しますか? –

答えて

1

にアプリケーションデータを格納することができます。その後、特定のサブフォルダにアクセスするための基礎としてこれを使用することができます - これは、あなたが探しているフォルダは、アセンブリが配置されている場所のサブフォルダであると仮定している...

System.Reflection.Assembly.GetExecutingAssembly().Location //This actually returns the assembly file name, so you would need to use FileInfo to get the folder location. 

より良いアプローチは、おそらくシステムです。 Appdomainを使用すると、アセンブリではなく、実際のWPFアプリケーションの場所にアクセスできます。

System.AppDomain.CurrentDomain.BaseDirectory 
関連する問題