0

我有两个简单的 aspx 页面

Viewpage.aspx

<asp:HyperLink ID="lbllink" runat="server" Target="_Blank"></asp:HyperLink>

Editpage.aspx

<asp:TextBox ID="txtlink" runat="server"></asp:TextBox>// client input the link : faceboook.com

在后面的代码中:

lbllink.Text= txtlink.Text;// txtlink.Text = facebook.com
lbllink.NavigateUrl = txtlink.Text;

当我构建时,发生错误:The resource cannot be found.因为facebook.com不是我的 webstie 文件夹中的页面。

我不能使用<a href= >,因为它没有ID标签。

求助,有没有更好的办法解决我的问题???

4

1 回答 1

1

您无法猜测它是 arelative还是absoluteurl。

如果您知道它始终是一个外部 url,那么您需要确保输入的 url 带有http://前缀,否则您的服务器将假定它与单击它的页面相关。

Uri 类有一些非常有用stuff的。

您可能会发现此方法很有用

public static string ToAbsoluteUrl(string relativeUrl) {
    if (string.IsNullOrEmpty(relativeUrl)) return relativeUrl;
    if(relativeUrl.ToLower().StartsWith("http")) return relativeUrl;

    return String.Format("http://{0}", relativeUrl);
}
于 2013-10-22T07:58:31.773 回答