2

我遇到了 server.mappath 方法的问题。我目前的代码是:

var imageroot = Server.MapPath("~/Images/Property/");
var foldername =  rPropertyId.ToString();
var path = Path.Combine(imageroot, foldername);

当我将此路径上传到我的数据库中时,我希望看到以下 URL:

/images/property/1/filename.jpg

但我实际看到的是这个网址:

C:\Users\gavin\Dropbox\我的网站\StayInFlorida\Images\Property\1\filename.jpg

我该如何解决这个问题?我假设我必须更改 MapPath 方法,但是我尝试了一些方法,但没有运气。

4

1 回答 1

2

Server.MapPath方法返回一个文件系统路径。你想要的是一个(相对)URL。路径和 URL 是完全不同的东西。通常,如果您想在服务器端代码中管理文件,则需要一个路径,如果您通过超链接向访问者提供对这些文件的访问权限,则需要一个 URL。URL 可以从字符串构造:

var url = string.Format("/Images/Property/{0}/{1}", rProprtyId, filename)
于 2013-12-24T07:53:33.677 回答