我需要在我的视图中创建图像标签,并在“uploads”文件夹中通过控制器方法创建图像后生成网址。我可以硬编码我的网址,但这不是这样做的方法。无论我在哪里部署应用程序,我都需要上传文件夹的真实URL。
例如,uploads文件夹位于Views / Controllers / Models的根级别,如此
http://localhost:1350/uploads
如何在C#/ MVC 4中生成此URL?
答案 0 :(得分:1)
答案 1 :(得分:1)
您可以使用此
public static string GetFileUrl(string serverUrl, bool forceHttps)
{
if (serverUrl.IndexOf("://") > -1)
return serverUrl;
string resultUrl = serverUrl;
Uri originalUri = System.Web.HttpContext.Current.Request.Url;
resultUrl = (forceHttps ? "https" : originalUri.Scheme) +
"://" + originalUri.Authority + resultUrl;
return resultUrl ;
}
var url = GetFileUrl(VirtualPathUtility.ToAbsolute("~/uploads/"),false))
答案 2 :(得分:0)
你能尝试一下吗?
HttpContext.Current.Server.MapPath("~/Uploads");
获取网址的方式:
var currentServerURL = Request.Url.Scheme + "://" + Request.Url.Authority + Request.ApplicationPath.TrimEnd('/') + "/";