Strongly-typed ids

레코드의 고유한 ID를 식별하기 위해 일반적으로 int 형 또는 string 을 사용합니다. 그렇기 때문에 코딩시 인자를 넘기거나 생성할 때 충분히 실수할 여지가 있는데요, strongly-typed ids에 대한 아이디어 중 C# 9의 record를 이용하는 방법도 소개되어 있어 공유 합니다.

Using C# 9 records as strongly-typed ids - Thomas Levesque’s .NET Blog

C# 9 records as strongly-typed ids - Part 2: ASP.NET Core route and query parameters - Thomas Levesque’s .NET Blog

C# 9 records as strongly-typed ids - Part 3: JSON serialization - Thomas Levesque’s .NET Blog

C# 9 records as strongly-typed ids - Part 4: Entity Framework Core integration - Thomas Levesque’s .NET Blog

record는 값 비교시 값처럼 쓸 수 있다 뿐이지 record 자체가 불변하다는 것을 보장하지는 않습니다.
그리고 null을 허용하므로 함수언어의 불변과는 성질이 다르네요

record의 좋은 활용 사례군요. ^^