C# 11 List Patterns과 관련된 질문을 StackOverflow에서 발견했는데요. 이 사례를 통해 새로운 기능을 한번 살펴보겠습니다. 공식 문서보다는 재미있을 수도 있으니 한번 읽어보시면 좋을 것 같습니다.
질문자님이 원하는 코드
public static string IsRuEnWithEmail(Employee emp) => emp switch
{
{ Email: != null, Languages: { "ru", "en" } } =>
$"{emp.FCs}, {emp.Email}, {emp.Role}",
_ => "",
};
정답으로 채택된 List Patterns (C# 11)
// We expect a method prefixed with "Is" to return a boolean
// but OP provided this signature
public static string IsRuEnWithEmail(Employee emp) => emp switch
{
{ Email: {}, Languages: ["ru", "en", ..] } => $"{emp.FCs}, {emp.Email}, {emp.Role}",
_ => "",
};
- Email: {}은 객체가 null이 아닌지를 확인합니다.
제가 준비한 내용은 여기까지 입니다.
읽어주셔서 감사합니다.