Как я могу сделать свойство “Write Once Read Many” в VB.NET?

Что лучший способ состоит в том, чтобы сделать свойство "Write Once, Read Many" класса таким образом, что можно только установить свойство однажды?

Я знаю, что мог передать все свойства в конструкторе и сделать их ReadOnly, но в случаях с большим количеством свойств я не хочу конструктора, который имеет 20 + аргументы.

Кроме того, я понимаю, что могу "прокрутить свои собственные" методы set, но имеющий необходимость сделать это для каждого свойства походит на набор избыточного кодирования.

Существует ли очевидный способ, чтобы сделать это в.NET 2008 VB 3.5?

7
задан Casey Wilkins 12 January 2010 в 15:16
поделиться

2 ответа

Пишите, когда свойство никогда не будет «чистым».

Я рекомендую создать класс Builder / Factory, чтобы избежать 20 PARAM CTOR. (Да, я знаю, что это довольно какое-то набрав)

Подобное обсуждение здесь: Должен ли я использовать набор один раз переменные?

[править] Кроме того, даже если вы настаиваете, я не вижу другой вариант, чем прокат собственных посетителей, что тоже много набрав.

2
ответ дан 7 December 2019 в 14:33
поделиться

«Чистый» способ не делать этого вообще и использовать автоматические свойства. Я не смогу видеть необходимость в этом тоже. Это действительно важно, чтобы они могли быть написаны только один раз? Если так, то я определенно пошел с конструктором, который принимает значения для всех свойств в качестве параметров.

0
ответ дан 7 December 2019 в 14:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: