我要给数据库添加权限,如A:1,2,3,4,5(注意逗号是在5前面截止)
B:2,3,4,5,6,(注意逗号是在6后面截止)
我要把相应的数字赋值给CHECKBOXLIST
当初我添加权限的字符串的时候这样写的
foreach (ListItem i in CheckBoxList1.Items)
{
if (i.Selected)
{
str +=i.Value+",";
}
}
所以导致插入SQL后最后一个都是,号结尾,这样无法赋值
我取值的时候用了
cn.Open();
string str = Convert.ToString(cmd.ExecuteScalar());
cn.Close();
if (str != null)
{
string[] strings = str.Split(',');
foreach (string s in strings)
{
CheckBoxList1.Items.FindByValue(s).Selected = true;
}
}
我这样写的结果是A:记录可以用分割取出,但是B记录就提示错误了.
请问是否在我添加权限的时候就写错了?还是SPLIT 有什么其他用法,只取逗号左边的数字?
------解决方案--------------------------------------------------------
str.substring(0,str.length-1)
应该是着样子的!
------解决方案--------------------------------------------------------
foreach (string s in strings)
{
if(s.Trim()!="")
{
CheckBoxList1.Items.FindByValue(s).Selected = true;
}
}