对于以下代码,我无法开始string.Replace工作:
someTestString.Replace(someID.ToString(), sessionID);
Run Code Online (Sandbox Code Playgroud)
当我调试并检查参数时,它们具有我期望的值 - 即someID.ToString()得到"1087163075",并且sessionID具有"108716308"并someTestString包含"1087163075".
我不知道为什么这不会改变 someTestString
完整样本:
string someTestString =
"<a href='myfoldert/108716305-1.jpg' target='_blank'>108716305-1.jpg</a>"
someTestString.Replace("108716305", "NewId42");
Run Code Online (Sandbox Code Playgroud)
结果(in someTestString)应该是这样的:
"<a href='myfoldert/NewId42-1.jpg' target='_blank'>NewId42-1.jpg</a>"
Run Code Online (Sandbox Code Playgroud)
但它没有改变.someTestString在命中我的代码后,字符串保持不变.
string message = CommonFunctions.SanitiseInput(context.Request.QueryString["msg"]);
Run Code Online (Sandbox Code Playgroud)
功能定义为:
// Sanitise input
public static string SanitiseInput(string inputText)
{
string cleanedString = inputText;
cleanedString.Replace("<","<"); // No code
cleanedString.Replace(">", ">");
cleanedString.Replace("&", "&"); // No query string breaks
return cleanedString;
}
Run Code Online (Sandbox Code Playgroud)
给定输入,"<b>rg</b>"返回相同,而不是"<b>rg</b>"