2

我对 server.mappath 有一点困惑,这是正确的,这两者之间有什么区别

FileUpload1.saveAs(Server.MapPath("~/User/images/")+"ankush.jpg"));

FileUpload1.saveAs(Server.MapPath("~/User/images")+"ankush.jpg"));
4

2 回答 2

3

使用 MapPath() 的正确方法是:

FileUpload1.saveAs(Server.MapPath("~/User/images/ankush.jpg"));

或者如果你坚持:

FileUpload1.saveAs(Path.Combine(Server.MapPath("~/User/images"),"ankush.jpg")));

MapPath() 不会将尾部反斜杠附加到映射路径,因为它无法知道路径是目录还是文件(它不检查给定路径是否实际存在)

于 2012-07-08T17:44:59.003 回答
1

我建议你使用这种方式

FileUpload1.saveAs(Server.MapPath("~/User/images/ankush.jpg"));

原因:因为如果您已经知道路径,那么为什么要单独分解文件名如果文件名是通过参数传递的,那么您可以这样做

FileUpload1.saveAs(Server.MapPath(String.Format("~/User/images/{0}", fileName)));
于 2012-07-08T18:07:19.447 回答