0

ハイみんな、

CSVLoadとFormsという2つのフォルダーがあります...ファイルアップロードコントロールがあるformsフォルダー内にaspxページがあります。アップロードしたファイルをCSVLoadフォルダーに保存します。次のパスを指定しました

FileUpload1.SaveAs(Server.MapPath("CSVLoad//" + FileUpload1.FileName));

ファイルが見つからないという例外を受け取っています...

Could not find a part of the path 
'F:\WebSites\Payroll\Forms\CSVLoad\Employeesdata.csv'

CSVLoadフォルダーはFormsフォルダーの外にあります(つまり、どちらもアプリケーションのルートレベルのフォルダーです)

答え :

FileUpload1.SaveAs(Server.MapPath("~/CSVLoad//" + FileUpload1.FileName));

以前のSOの質問の1つから内部フォルダーからのASP.NETServer.Mappathの問題

4

1 に答える 1

2

パスがスラッシュで始まらない場合は、ページが存在する現在のディレクトリ(この場合はフォーム)からの相対パスが返されます。アプリケーションのルートを基準にしてパスをマップする場合は、パスの前にスラッシュを付けて、次を使用する必要があります。

Server.MapPath("~/CSVLoad/" + FileUpload1.FileName);
于 2010-01-07T18:33:10.237 に答える