728x90
아래의 예제는 TreeNodeCollection 을 Podcast List로 변환하는 LINQ 메소드 조합이다.
Collection 은 IList 를 IList 는 IEnumerable, ICollection 을 상속함.
따라서 이를 List 인스턴스로 변환하여 return 하는 구성을 갖을 수 있음.
var podcasts = subscriptionView.treeViewPodcasts.Nodes
.Cast<TreeNode>()
.Select(tn => tn.Tag)
.OfType<Podcast>()
.ToList();
Nodes로 부터 Collection 인스턴스를 받고 IEnumerable<TreeNode>를 받음 여기에서 Treenode안에 있는 Tag 에 연결된 인스턴스들을 모두 선택하고 PodCast 타입의 IEnumerable 인스턴스를 받아서 List 로 전달함.
728x90
728x90