摘要:某ASP.NET書 String.Replace() 使用錯誤
某ASP.NET書中的某範例利用Session記錄使用者在GridView選擇的一些主索引鍵,
假設以Label1.Text表示該Session,Label2.Text表示使用者要取消選擇的主索引鍵,
則下列程式會導致Label1.Text變成"2,112"的錯誤,
Label1.Text = "1,2,11,12";
Label2.Text = "1";
if (Label1.Text.IndexOf(Label2.Text, 0) >= 0)
{
string 要刪除的字串 = Label2.Text + ",";
Label1.Text = Label1.Text.Replace(要刪除的字串, "");
}
提議將程式改成如下可解決,
Label1.Text = "(1),(2),(11),(12)";
Label2.Text = "(1)";
if (Label1.Text.IndexOf(Label2.Text, 0) >= 0)
{
string 要刪除的字串 = Label2.Text + ",";
Label1.Text = Label1.Text.Replace(要刪除的字串, "");
}