Автоматические свойства не имеют к этому никакого отношения - те же параметры доступны для автоматических свойств и свойств "вручную". Вы можете ограничить доступ к сеттеру следующим образом:
// Setter access only to this type and nested types
public string Name { get; private set; }
// Setter access within the assembly
public Group[] Groups { get; internal set; }
и т.д.
... но вы не можете сделать это для одного класса (если этот класс не вложен в объявленный тип, в этом случае private
будет в порядке). В .NET или C # нет доступа с ограниченным пространством имен.
(Не совсем понятно, в каком классе объявлены свойства - если они TdmReader
, то просто сделайте их закрытыми. Если они TdmFile
, у вас проблема, описанная выше.)