-1

たとえば、相対パスを取得しようとしています。C:\somedirectory\someproject\someproject.Business\somefolder\

やってみPath.GetFullPath(Application.StartupPath)ました。ただし、DevServer のフォルダーが返されます。

4

3 に答える 3

2

ソリューションをさまざまなプロジェクトに分けており、少なくとも次のものがあると想定しています。

  • ビジネス層
  • ウェブアプリケーション

上記の情報から、ビジネス レイヤーにあるフォルダーにアクセスしようとしているように見えます。しかし、おそらく Web サーバー アプリケーションからコードを実行しているため、これまでの回答がどれも機能しなかったのです。

アクセスしようとしているのが特定のファイルである場合は、Visual Studio でファイル/フォルダーのビルド アクションを変更することをお勧めします。これにより、アプリケーションが実行されている適切なコンテキストにファイルが自動的にコピーされます。 ここに画像の説明を入力

BuildAction プロパティは、ビルドの実行時に Visual Studio がファイルに対して行う処理を示します。BuildAction には、次の値のいずれかを指定できます。

なし- ファイルはプロジェクト出力グループに含まれず、ビルド プロセスでコンパイルされません。例として、Readme ファイルなどのドキュメントを含むテキスト ファイルがあります。

コンパイル- ファイルはビルド出力にコンパイルされます。この設定は、コード ファイルに使用されます。

コンテンツ- ファイルはコンパイルされませんが、コンテンツ出力グループに含まれます。たとえば、この設定は、.htm またはその他の種類の Web ファイルの既定値です。

埋め込みリソース- このファイルは、メイン プロジェクトのビルド出力に DLL または実行可能ファイルとして埋め込まれます。通常、リソース ファイルに使用されます。

msdn でのビルド アクションの詳細については、http://msdn.microsoft.com/en-us/library/0c6xyb66(v=vs.80).aspx を 参照してください。

于 2012-07-25T08:57:51.433 に答える
1

どうですか

Server.Mappath(string path);
于 2012-07-25T06:08:05.137 に答える
0

Directory.GetCurrentDirectoryメソッドを使用してください

このメソッドは、現在の作業ディレクトリのパスを含み、バックスラッシュ () で終わっていない文字列を返します。

于 2012-07-25T06:30:05.657 に答える