我有我的本地主机和一个实时站点。我有一个网址,如果它在本地主机中,则该网址应转到localhost/site/thank_you.aspx,如果它是实时http://mylivesite.com/thank_you.aspx
我已经在我的代码后面尝试过...
MyHiddenField.Value = Request.URL + "/thank_you.aspx";
但它返回了我在/thank_you.aspx上的页面
我究竟做错了什么?
最佳答案
试试这个,我什至也添加了方案,以防万一你去https :)
编辑:还添加了端口(感谢Alex),以便成为 super duper super 面向 future 的方法:)
MyHiddenField.Value = string.Format(
"{0}://{1}{2}/thank_you.aspx",
Request.Url.Scheme,
Request.Url.Host,
Request.Url.IsDefaultPort ? string.Empty : ":" + Request.Url.Port);
编辑:@MikeSmithDev的另一个好的建议,将其放在函数中
public string GetUrlForPage(string page)
{
return MyHiddenField.Value = string.Format(
"{0}://{1}{2}/{3}",
Request.Url.Scheme,
Request.Url.Host,
Request.Url.IsDefaultPort ? string.Empty : ":" + Request.Url.Port,
page);
}
然后,您可以执行以下操作:
MyHiddenField.Value = GetUrlForPage("thank_you.aspx");
关于c# - 本地主机和实时站点的Request.URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14509898/