У меня есть словарь DICOM, который содержит набор объектов, все производные от DataElement. Словарь имеет ключ int и свойство DataElement. Мой словарь DICOM содержит свойство this [], в котором я могу получить доступ к DataElement, например:
public class DicomDictionary
{
Dictionary<int, DataElement> myElements = new Dictionary<int, DataElement>();
.
.
public DataElement this[int DataElementTag]
{
get
{
return myElements[int];
}
}
}
Проблема в том, что у меня есть разные типы DataElement, все производные от DataElement, такие как DataElementSQ, DataElementOB и так далее. Сейчас я хотел сделать следующее, чтобы немного упростить написание на C #:
public T this<T>[int DataElementTag] where T : DataElement
{
get
{
return myElements[int];
}
}
Но на самом деле это невозможно. Я что-то упустил? Конечно, я мог бы сделать это с помощью метода Getter, но было бы намного лучше, если бы это было так.