Сериализация выбранных элементов в ObservableCollection - PullRequest
0 голосов
/ 17 июня 2020

У меня есть следующие объекты, которые я сериализую в файл XML:


    public class BatchProcessing
    {
        public bool ProcessByBatch { get; set; } = false;
        public bool AllBatches { get; set; } = true;
        public ObservableCollection<BatchProcessingSpecificItem> SelectedBatches { get; set; }

    }
    public class BatchProcessingSpecificItem
    {
        public int BatchNumber { get; set; }
        public bool BatchSelected { get; set; } = false;
        public string BatchDisplay
        {
            get { return $"Batch {BatchNumber}"; }
        }

        public bool ShouldSerializeBatchProcessingSpecificItem()
        {
            return BatchSelected;
        }
     }

Из ObservableCollection я пытаюсь включить только те элементы, где BatchSelected == true

Я немного поискал и попытался реализовать ShouldSerialize[PropertyName]. Как видите, я попытался реализовать его непосредственно на объекте BatchProcessingSpecificItem, но он игнорируется.

Я думаю, что другим подходом может быть добавление отфильтрованного ObservableCollection<BatchProcessingSpecificItem>, содержащего только выбранные элементы, а затем исключить исходную коллекцию из сериализации. Заранее спасибо.

...