더북(TheBook)

형태가 동일한 개체이기에 값이 정상적으로 저장되고 출력됩니다.

> $"{duck.Id} - {duck.Name}"
"2 - Duck 2"

이번에는 처음에 선언한 형태가 아닌 Id에 실수 데이터를 넣어 보겠습니다. 처음 선언된 duck 개체와 다른 개체가 대입되기에 다음과 같이 예외가 발생합니다.

> duck = new { Id = 3.14, Name = "Duck 3" };
(1,8): error CS0029: 암시적으로 '<anonymous type: double Id, string Name>' 형식을 '<anonymous type: int Id, string Name>' 형식으로 변환할 수 없습니다.

이번에는 Name 속성을 제외한 채 개체를 할당해 보겠습니다. 이때도 예외가 발생합니다.

> duck = new { Id = 3 };
(1,8): error CS0029: 암시적으로 '<anonymous type: int Id>' 형식을 '<anonymous type: int Id, string Name>' 형식으로 변환할 수 없습니다.
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.