У меня есть класс под названием «Инструмент». Инструмент имеет такие свойства, как: имя, описание и некоторые другие. Инструмент особенный, потому что Имя и другие доступны только для чтения, но описание может быть изменено пользователями.
Количество инструментов постоянно и известно во время разработки. Это не Value Object, потому что мне нужно запросить их и показать пользователям, где они могут обновить Description. Так что это своего рода сущность, но пользователи не могут создавать новые инструменты.
Я ищу возможность взять Инструмент вот так:
Tool.SomeGreatTool
где SomeGreatTool - инструмент с именем «Какой-то отличный инструмент», и описание должно быть таким же, как указано пользователем.
Джимми Богард имеет почти идеальное решение , но NHibernate ничего не знает о SomeGreatTool и Description будет нулевым.
Как изменить решение Джимми или как это сделать по-другому? Как создать SomeGreatTool из базы данных?