문제

아래와 같은 것을 쿼리하는 데이터 테이블이 있습니다.

usergroupid...userid......username
1.............1...........John
1.............2...........Lisa
2.............3...........Nathan
3.............4...........Tim

제가하려는 것은 사용자 그룹 인스턴스 배열을 반환하는 LINQ 문을 작성하는 것입니다. UserGroup 클래스에는 userGroupId 및 사용자의 속성이 있습니다. 사용자는 다양한 사용자 인스턴스입니다. 그런 다음 사용자 클래스에는 userID 및 사용자 이름의 속성이 있습니다.

이러한 계층 구조를 단일 LINQ 문으로 작성할 수 있으며 어떻게 생겼을까요?

대단히 감사합니다

도움이 되었습니까?

해결책

이것을 확인하십시오. 이것이 도움이되기를 바랍니다

var users = new[] 
{
    new {UserGroupId = 1, UserId = 1, UserName = "John"},
    new {UserGroupId = 1, UserId = 2, UserName = "Lisa"},
    new {UserGroupId = 2, UserId = 3, UserName = "Nathan"},
    new {UserGroupId = 3, UserId = 4, UserName = "Tim"}
};

var userGroups = from user in users 
                 group user by user.UserGroupId into userGroup 
                 select new {
                                UserGroupId = userGroup.Key, 
                                Users = userGroup.ToList()
                            };

foreach (var group in userGroups)
{
    Console.WriteLine("{0} - {1}",group.UserGroupId, group.Users.Count);
}

다른 팁

GroupBy를보고 선택 방법이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top