Web プロジェクトがあり、C# メソッドを使用して Web サイトのルート ディレクトリを取得しようとしていますDirectory.GetCurrentDirectory()
。ファイルの場所は将来変更されるため、静的パスは使用したくありません。このメソッドは imageProcess.aspx.cs ファイルで実行されていますが、次の結果が返されると考えていました。
C:\Users\tcbl\documents\visual studio 2010\Projects\ModelMonitoring\ModelMonitoring\imageProcess.aspx.cs
代わりに次のようになります:
C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0\
なぜこのようなことが起こるのか、またどのような解決策があるのかを誰か説明してもらえますか? よろしくお願いします。
ベストアンサー1
現在のディレクトリはシステムレベルの機能であり、サーバーが起動されたディレクトリを返します。Web サイトとは関係ありません。
あなたが欲しいHttpRuntime.AppDomainAppPath
。
HTTP リクエストの場合は、 を呼び出すこともできますServer.MapPath("~/Whatever")
。