字符串替换不起作用

时间:2009-10-13 03:08:06

标签: c#

public static string ChangeUriToHttps(HttpRequest request)
{
    string uri = request.Url.AbsoluteUri;

    if (!IsRequestSecure(request))
        uri.Replace("http", "https");

    return uri;
}

如果我发送的请求中包含这样的uri:

http://localhost/AppName/somepage.aspx

它不会用https替换http。

1 个答案:

答案 0 :(得分:17)

常见的错误。字符串是不可变的。这意味着无法修改原始对象。

 public static string ChangeUriToHttps(HttpRequest request)
 {
      string uri = request.Url.AbsoluteUri;

      if (!IsRequestSecure(request))
          uri = uri.Replace("http", "https");

      return uri;
 }