2

現在、以下のコードを使用して、ファイルを自分の Web サイトのディレクトリに保存しています。

//save the file to the server
String savePath = Server.MapPath("..\\temp\\") + file;
FileUpload.PostedFile.SaveAs(savePath);

コンピューターでアプリケーションを実行すると、次のパスが返されます。

"E:\dotnet\Project\Implementation\Source Code\Project\Project.UI\temp\Sample.csv"

ただし、実サーバーで実行すると、例外がスローされます。

System.NotSupportedException: The given path's format is not supported.

希望するパスは「C:\inetpub\wwwroot\Project\temp」です。

私は物事を正しく行っていますか?そうでない場合、誰かがこれを行う正しい方法を私に説明できますか?

4

1 に答える 1

1

Server.MapPath は、仮想パスをサーバー上の物理パスにマップします。バックスラッシュをスラッシュに置き換えれば問題ありません:

Server.MapPath("../temp/")

ルート相対パスを使用することもできます。

Server.MapPath("~/temp/");
于 2010-11-19T02:35:59.837 に答える