RedditStoreApp.ViewModels.SubredditViewModel.MergeCollections C# (CSharp) Метод

MergeCollections() приватный Метод

private MergeCollections ( Listing input ) : void
input Listing
Результат void
        private void MergeCollections(Listing<Post> input)
        {
            // Step one.... remove any deleted items.
            List<PostViewModel> toRemove = new List<PostViewModel>();

            foreach (var postvm in _posts)
            {
                bool doesExist = (from post in input where post.Name == postvm.Name select post).Count() > 0;
                if (!doesExist)
                {
                    toRemove.Add(postvm);
                }
            }

            foreach (var postvm in toRemove)
            {
                _posts.Remove(postvm);
            }

            // Step two.... add any new items.
            foreach (var post in input)
            {
                bool doesExist = (from postvm in _posts where postvm.Name == post.Name select postvm).Count() > 0;
                if (!doesExist)
                {
                    _posts.Add(new PostViewModel(post));
                }
            }
        }
    }