string.Replace(或其他string修改)不起作用
对于下面的代码,我无法获取string。replace工作:
someTestString.Replace(someID.ToString(), sessionID);
当我debugging和检查someID.ToString它有“108716307”和sessionID有“108716308”
不知道为什么这不会工作,如果someTestString是以下内容:
"The:<br>Photo: <b><a href='myfoldert/108716305-1.jpg' target='_blank'>108716305-1.jpg</a> (originalphoto.gif)</b><br>Background Color: <b>223324</b>"
结果应该是这样的:
"The:<br>Photo: <b><a href='myfoldert/108716305-1.jpg' target='_blank'>1087163085-1.jpg</a> (originalphoto.gif)</b><br>Background Color: <b>223324</b>"
但它不会改变。 点击我的代码后,someTestString的string保持不变。
string是不可改变的。 string.Replace的结果是一个replace值的新string。 尝试这个:
var newString = someTestString.Replace(someID.ToString(), sessionID);
someTestString = someTestString.Replace(someID.ToString(), sessionID);
这应该为你工作
string是不可变的,replace会返回一个新的string,所以你需要类似的东西
string newstring = someTestString.Replace(someID.ToString(), sessionID);
您可以通过使用达到预期的效果
someTestString = someTestString.Replace(someID.ToString(), sessionID);
正如womp所说,string是不可变的,这意味着它们的值不能在不改变整个对象的情况下改变。