我将用户活动目录组拉入列表。列表中有几个组,其中一些列为
电路板测试& 董事会测试管理员
我将列表过滤成一个新列表,其中只包含以“Board”开头的所有内容,所以现在我的列表只包含上面的两行。
但是现在我需要2个单独的列表。因此,从最初的长组列表中,我需要创建一个仅包含“Board Testing”行的列表。另一个列表只包含“Board Testing Admin”。
我原来做的事现在不起作用。
$('.Message .CodeBlock', this).wrap('<div class=surroundpre></div>');
$('.surroundpre').prepend('$Uniquepreid');
答案 0 :(得分:2)
我说你几乎就在那里,只是检查名称Contains()
'Board Testing Admin'是否:
List<string> GroupNames = new List<string>();
GroupNames.AddRange(ADConnect.ADConnect.GetGroups(adusername));
var group1 = GroupNames.Where(g => g.Contains("Board Testing Admin"));
var group2 = GroupNames.Where(g => !g.Contains("Board Testing Admin"));
答案 1 :(得分:0)
List<string> GroupNames = new List<string>();
GroupNames.AddRange(ADConnect.ADConnect.GetGroups(adusername));
List<string> FilteredBoardTestingGroup = new List<string>();
List<string> FilteredBoardAdminGroup = new List<string>();
var FilteredName = new String[] { "Board Testing" };
var names = GroupNames.Where(t => FilteredName.Any(c => t.Contains(c)));
FilteredBoardTestingGroup.AddRange(names);
FilteredName = new String[] { "Board Testing Admin" };
names = GroupNames.Where(t => FilteredName.Any(c => t.Contains(c)));
FilteredBoardAdminGroup.AddRange(names);
cmbgroup1.DataSource = FilteredBoardTestingGroup;
cmbgroup2.DataSource = FilteredBoardAdminGroup;
答案 2 :(得分:0)
尝试此扩展方法...
public static class ListExtensions
{
public static List<List<T>> split<T>(this List<T> source, int sizeOfList)
{
return source
.Select((x, i) => new { Index = i, Value = x })
.GroupBy(x => x.Index / sizeOfList)
.Select(x => x.Select(v => v.Value).ToList())
.ToList();
}
}
<强>实施强>
List<string> test = new List<string> { "A", "B", "C" };
List<List<string>> temp = test.split(test.Count);