У меня есть Dictionary, и я хотел бы предоставить этот член только для чтения. Я вижу, что могу вернуть его как IReadOnlyDictionary, но не могу понять, как вернуть его как IReadOnlyDictionary.
Есть ли способ сделать это? В C++ я бы просто использовал const, но в C# этого нет.
Обратите внимание, что простое использование IReadOnlyDictionary в этом случае не поможет, поскольку я хочу, чтобы значения также доступны только для чтения. Похоже, что единственный способ сделать это — создать еще один IReadOnlyDictionary и добавить к нему IReadOnlyList.
Другой вариант, который меня не в восторге, — создать оболочку, реализующую интерфейс IReadOnlyDictionary, и хранить в ней копию исходного экземпляра, но это кажется излишним.
Подробнее здесь: https://stackoverflow.com/questions/390 ... in-c-sharp