Я постараюсь дать вам краткий ответ, особенно учитывая, что у вас уже есть отличная публикация Айенде, на которую можно сослаться.На самом деле он не показывает код объекта Blog, эквивалент базы данных таблицы Blog или сопоставление в этом посте, но все они должны существовать, чтобы его пример работал
a) Для сопоставлениябыть правильным означает, что NHib знает, как перевести объект Blog в таблицу Blog и обратно.Поскольку его модульный тест сохраняет запись в блоге и затем загружает ее из базы данных, можно предположить, что сопоставление для всех сохраняемых и загружаемых свойств должно быть сопоставлено правильно.
b) Это действительно относится к«полнота» отображения.В своем примере он использует свойство Title объекта blog, так что любые другие свойства, которые необходимо сохранить, являются частью его модульного теста.Предположительно, его модульный тест включает в себя полный набор свойств блога, которые необходимо сохранить.
c) Это относится к поведению связанных табличных каскадов.Например, если вы хотите, чтобы Blog.Comments автоматически сохранялся в таблице db «Комментарии» при сохранении записи в блоге, для нее должен быть проведен модульный тест, возможно, подтверждающий, что вы можете получить комментарии после сохранения в блоге (Ayende не делает).не показывать такой тест в этом посте).
d) Айенде не показывает тестовый запрос в этой публикации, но если у него был сценарий использования для извлечения блогов, созданных за указанный диапазон дат, он мог бы пройти тест с записями в блоге за период недели, а затемДокажите, что он может выбрать только те, которые были созданы в определенный день.
Это может показаться довольно сложной темой (и это так!), но единственный способ избавиться от мистики - это испачкать рукии сделай это.
HTH,
Berryl