from 중첩해서 사용하기
=> foreach를 2번 쓴 것과 같은 효과!
// from 2번 쓰기
var playerItems = from player in _players
from item in player.Items
where item < 30
select new { player, item };
grouping
// grouping
var playersByLevel = from player in _players
group player by player.Level into levelGroup
orderby levelGroup.Key
select new { levelGroup.Key, Players = levelGroup };
join
// outer join(외부 조인)
List<int> levels = new List<int>() { 1, 5, 9 };
var playerLevels = from player in _players
join level in levels
on player.Level equals level
select player;
LINQ 표준 연산자
// LINQ 표준 연산자
var players2 = from player in _players
where player.ClassType == ClassType.Knight && player.Level >= 50
orderby player.Level ascending
select player;
// 위와 같은 표현. 이 버전이 세부 기능이 더 많음
var players3 = _players
.Where(p => p.ClassType == ClassType.Knight && p.Level >= 50)
.OrderBy(p => p.Level)
.Select(p => p);
2가지 버전이 있는데, 위 버전에 있는데 아래 버전에 없는 기능이 있기도 하고, 그 반대의 경우도 있다.
둘 중에는 아래 버전이 더 기능이 많아서, 많은 기능을 쓰고싶으면 아래 버전을 사용하면 된다.
'Unity > Web Server' 카테고리의 다른 글
| [Web Server] HTTP 서버통신 및 API 사용방법 (0) | 2025.10.15 |
|---|---|
| [Web Server] 섹션 3. 고급 C# 문법 - 12. LINQ #1 (1) | 2025.09.28 |
| [Web Server] 섹션 3. 고급 C# 문법 - 11. Async, Await (0) | 2025.09.07 |
| [Web Server] 섹션 2. 웹 기초 - 3. 환경 설정 (0) | 2025.08.24 |