일반 목록의 익명 클래스
C# 3.0에서는 다음 구문을 사용하여 익명 클래스를 유연하게 정의할 수 있습니다.
var o = new { Id = 1, Name = "Foo" };
이러한 익명 클래스를 제네릭 클래스에 저장할 수 있는지에 대한 일반적인 질문이 제기됩니다. 목록. 이 문제를 살펴보겠습니다.
다음 예를 고려하십시오.
var o = new { Id = 1, Name = "Foo" }; var o1 = new { Id = 2, Name = "Bar" }; List list = new List(); list.Add(o); list.Add(o1);
대체 시나리오는 루프 내에 익명 클래스를 추가하는 것입니다.
List<var> list = new List<var>(); while (...) { .... list.Add(new { Id = x, Name = y }); .... }
해결책:
이 문제를 해결하려면 다음 접근 방식을 활용할 수 있습니다. like:
var list = new[] { o, o1 }.ToList();
또는 일반 메서드를 사용하여 유형 추론을 사용할 수 있습니다.
public static List<T> CreateList<T>(params T[] elements) { return new List<T>(elements); } var list = CreateList(o, o1);
이러한 기술을 구현하면 일반 목록 내에서 익명 클래스를 효과적으로 관리할 수 있습니다.
위 내용은 C# 일반 목록에 익명 클래스를 저장할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!