Как удалить дубликат элемента из stringbuilder
я не могу удалить дубликат элемента из stringbuilder
Что я уже пробовал:
StringBuilder sb1 = new StringBuilder(); string sep = ""; //List<string> term = new List<string>(); foreach (RepeaterItem item in Repeater1.Items) { CheckBoxList CheckBoxList1 = (CheckBoxList)item.FindControl("CheckBoxList1"); foreach (ListItem item1 in CheckBoxList1.Items) { if (item1.Selected == true) { Label lblname = (Label)item.FindControl("Label1"); sb1.AppendFormat("{0}{1}", sep, lblname.Text); } } List<string> itemList = sb1.ToString().ToUpper().Split(',').ToList<string>(); Label5.Text = itemList.ToString(); }
Jochen Arndt
Выполните проверку перед добавлением.
Однако почему вы используете StringBuilder здесь?
Почему бы не использовать список "строка" и не добавить элементы, которые еще не существуют в списке?
F-ES Sitecore
Что вы подразумеваете под "дублирующим элементом"? Stringbuilder-это просто текст. Если вы имеете в виду, что у вас есть элементы чекбокса с одной и той же меткой, и вы не хотите дублировать метки, то решение для добавления состоит в том, чтобы в первую очередь не добавлять дубликаты в конструктор строк. Вместо этого вы можете добавить текст в список "строка"и сделать a .Distinct() в этом списке, чтобы удалить дубликаты, а затем добавить их в конструктор строк.
ADI@345
Список<строка> в срок = новый список<строка&ГТ;();
foreach (RepeaterItem item in Repeater1.Предметы)
{
CheckBoxList CheckBoxList1 = (CheckBoxList)элемент.FindControl("CheckBoxList1");
по каждому элементу (элемент listitem элемент1 в CheckBoxList1.Предметы)
{
if (item1.Selected == true)
{
Label lblname = (метка)элемент.FindControl("Label1");
term.Add(lblname.Текст);
}
}
}
Label5.Текстовая строка.Join(" ", term.Метод toArray());
}
это работает , но как я получаю только отдельный элемент.я имею в виду удалить дубликат элемента..
Maciej Los
Пожалуйста, дайте определение "дублирующему элементу"...