Вы можете использовать следующий код, чтобы заменить «~ /» для абсолютирования URL.
System.Web.VirtualPathUtility.ToAbsolute("~/")
Редактировать:
Сначала нужно определить метод.
public static string ResolveServerUrl(string serverUrl, bool forceHttps)
{
if (serverUrl.IndexOf("://") > -1)
return serverUrl;
string newUrl = serverUrl;
Uri originalUri = System.Web.HttpContext.Current.Request.Url;
newUrl = (forceHttps ? "https" : originalUri.Scheme) +
"://" + originalUri.Authority + newUrl;
return newUrl;
}
Теперь вызов этого метода вернет полный URL-адрес освобождения.
ResolveServerUrl(VirtualPathUtility.ToAbsolute("~/images/image1.gif"),false))
Выход будет http://www.yourdomainname.com/images/image1.gif
Попробуйте использовать это.
Url.Action("~/images/image1.gif", "/", null, Request.Url.Scheme)
new Uri(Request.Url, Url.Content("~/images/image1.gif"))