【IE,Safari】C#(ASP.net)でファイル指定時のNotSupportedException
2016/8/3
こんにちは。開発チームのRです。
本日はC#(ASP.net)でのファイル名呼び出しについてお話ししようと思います。
以前フォームからの画像ファイル名を取得してサーバに保存しようとした際、以下のプログラムで問題が起こりました。
var picture = Request.Files["picture_upload"]; picture.SaveAs(Server.MapPath( string.Concat("~/images/", picture.FileName) ));
ChromeとFireFoxではうまくファイル名を取得できるのですが、IE11ではNotSupportedExceptionが発生してしまいました。
IEとSafariではFileNameをフルパスで呼び出すようで、以下のように修正する必要がありました。
var picture = Request.Files["picture_upload"];
picture.SaveAs(Server.MapPath(
string.Concat("~/image/", Path.GetFileName(picture.FileName))
));
ブラウザごとに異なる処理があるとは予想外でした。
お困りの方は、ぜひ試してみてください。
参考:
asp.net mvc 4 – Server Map Path save problems when using IE or Safari – Stack Overflow
http://stackoverflow.com/questions/20632166/server-map-path-save-problems-when-using-ie-or-safari
カテゴリ:ASP.net, C#, ブラヴィッシモのいろいろな記事, プログラミング
新着記事
人気記事
156 views | posted on 2016/08/31 Androidアプリの .apk ファイルを解凍してみました
85 views | posted on 2016/09/21 たくさんのファイルに同じ処理をしたい時のExcelマクロ
13 views | posted on 2016/08/17 type="file"を独自デザインにしてもIE9で選択ファイル名が表示されるJS