たとえば、相対パスを取得しようとしています。C:\somedirectory\someproject\someproject.Business\somefolder\
やってみPath.GetFullPath(Application.StartupPath)
ました。ただし、DevServer のフォルダーが返されます。
たとえば、相対パスを取得しようとしています。C:\somedirectory\someproject\someproject.Business\somefolder\
やってみPath.GetFullPath(Application.StartupPath)
ました。ただし、DevServer のフォルダーが返されます。
ソリューションをさまざまなプロジェクトに分けており、少なくとも次のものがあると想定しています。
上記の情報から、ビジネス レイヤーにあるフォルダーにアクセスしようとしているように見えます。しかし、おそらく Web サーバー アプリケーションからコードを実行しているため、これまでの回答がどれも機能しなかったのです。
アクセスしようとしているのが特定のファイルである場合は、Visual Studio でファイル/フォルダーのビルド アクションを変更することをお勧めします。これにより、アプリケーションが実行されている適切なコンテキストにファイルが自動的にコピーされます。
BuildAction プロパティは、ビルドの実行時に Visual Studio がファイルに対して行う処理を示します。BuildAction には、次の値のいずれかを指定できます。
なし- ファイルはプロジェクト出力グループに含まれず、ビルド プロセスでコンパイルされません。例として、Readme ファイルなどのドキュメントを含むテキスト ファイルがあります。
コンパイル- ファイルはビルド出力にコンパイルされます。この設定は、コード ファイルに使用されます。
コンテンツ- ファイルはコンパイルされませんが、コンテンツ出力グループに含まれます。たとえば、この設定は、.htm またはその他の種類の Web ファイルの既定値です。
埋め込みリソース- このファイルは、メイン プロジェクトのビルド出力に DLL または実行可能ファイルとして埋め込まれます。通常、リソース ファイルに使用されます。
msdn でのビルド アクションの詳細については、http://msdn.microsoft.com/en-us/library/0c6xyb66(v=vs.80).aspx を 参照してください。
どうですか
Server.Mappath(string path);
Directory.GetCurrentDirectoryメソッドを使用してください
このメソッドは、現在の作業ディレクトリのパスを含み、バックスラッシュ () で終わっていない文字列を返します。