0

我想像这样替换我的网址中的一些字符串

request.RawUrl.ToString().Replace("sometext566666", "othertest")

但它不起作用为什么会这样?

例如,原始 url 就像

/sometext4554544454.aspx

我想要这样

/sometext.aspx
4

2 回答 2

0

我猜这是.NET。如果是这样,您应该知道String.Replace()返回一个包含替换结果的字符串(就像所有其他声称修改字符串的方法一样)。

因此,您需要将结果分配给变量或字段以保存结果。在某些情况下,您可能会将结果分配回您从中获取原始字符串的同一位置。但是您不允许覆盖RawUrl(而且,这样做可能会让您感到困惑)。

于 2013-03-28T08:16:31.853 回答
0

您正在使用的语句正在运行,但您没有分配替换函数的结果,只是执行它。

request.RawUrl.ToString().Replace("sometext566666", "othertest")

如果要保留结果,则需要将其分配给字符串。

例如

String result = request.RawUrl.ToString().Replace("sometext566666", "othertest");

否则,您可以将其分配给相同的 RawURL,但我认为这是一个 URI,因此您需要使用新的 URI,例如:

request.RawUrl = new URI(request.RawUrl.ToString().Replace("sometext566666", "othertest"));

不过,我不确定您是否可以实际编辑该属性。

于 2014-09-19T20:44:29.090 回答