本文整理汇总了C#中Department.GetUsers方法的典型用法代码示例。如果您正苦于以下问题:C# Department.GetUsers方法的具体用法?C# Department.GetUsers怎么用?C# Department.GetUsers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Department
的用法示例。
在下文中一共展示了Department.GetUsers方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FindAllUserByDepartment
/// <summary>
/// 지정된 부서에 소속된 직원들을 반환합니다.
/// </summary>
/// <param name="department">부서</param>
/// <param name="hierarchyContainsKind">부서의 조상/자손도 포함할 것인가 여부</param>
/// <returns>부서 소속원 컬렉션을 반환한다.</returns>
public IList<User> FindAllUserByDepartment(Department department, HierarchyContainsKinds hierarchyContainsKind)
{
department.ShouldNotBeNull("department");
if(IsDebugEnabled)
log.Debug(@"부서 소속 사원 정보를 가져옵니다. 부서의 상위 또는 하위 부서의 소속원들도 포함시킬 수 있습니다... " +
@"department={0}, hierarchyContainsKind={1}",
department, hierarchyContainsKind);
// 중복 사용자를 피하기 위해 HashedSet을 사용합니다.
var users = new HashSet<User>();
// 1. 조상부서에 소속된 직원 정보)
if((hierarchyContainsKind & HierarchyContainsKinds.Ancestors) > 0)
department.GetAncestors().RunEach(dept => dept.GetUsers().RunEach(u => users.Add(u)));
// 2. 현재부서에 소속된 직원 정보
if((hierarchyContainsKind & HierarchyContainsKinds.Self) > 0)
department.GetUsers().RunEach(u => users.Add(u));
// 3. 자손부서에 소속된 직원 정보)
if((hierarchyContainsKind & HierarchyContainsKinds.Descendents) > 0)
department.GetDescendents().RunEach(dept => dept.GetUsers().RunEach(u => users.Add(u)));
return users.ToList();
}