Я хотел бы задать себе еще несколько вопросов о том, как потребители этого класса получат доступ к данным в классе:
- Требуется ли им произвольный доступ к элементам DicomDataElements в вашем списке? Или они просто перечислят список?
- Если вы разрешите произвольный доступ, как вы будете искать в списке правильный DicomDataElement?
- Разрешите ли вы пользователю вставлять или добавлять DicomDataElements в список?
- Собираетесь ли вы поддержать запись файла обратно на диск? Т.е. нужно ли восстанавливать метки в правильном порядке?
Я понял, что вам, вероятно, нужен более надежный способ хранения ваших DicomDataElements в DicomDocument, и вам, вероятно, нужны другие способы доступа к тегам, кроме IEnumerable. В случае файлов DICOM, SortedDictionary, вероятно, является лучшим способом сохранить список элементов данных DICOM. Он может держать их в правильном порядке по тегу DICOM и предоставит произвольный доступ к тегам. Вы также, вероятно, хотите, чтобы индексатор класса предоставлял произвольный доступ к тегам.