Требование класса сопоставления для разрешения вновь добавленных полей - PullRequest
0 голосов
/ 10 сентября 2018

Я работаю над проектом c #, имеющим несколько уровней с инкапсуляцией типов данных. Но всякий раз, когда я добавляю поле к модели в слое верхнего уровня (скажем, Служба приложений ), мне нужно помнить, где еще я должен измениться, чтобы приложение работало должным образом.

Я ищу шаблон или метод, чтобы предотвратить возможные логические ошибки, а не обновлять классы отображения. Я думаю, что если я смогу потребовать, чтобы мои классы сопоставления разрешали вновь добавленные поля (например, с помощью исключения, если они не разрешены), проблема будет решена.

Так есть идеи для решения? или как мне реализовать свою идею?

1 Ответ

0 голосов
/ 11 сентября 2018

Вы можете использовать такую ​​библиотеку, как automapper, которая выдаст вам ошибку, если не все свойства будут отображены правильно (http://docs.automapper.org/en/stable/Configuration-validation.html),, плюс она избавит вас от написания всего кода для сопоставления каждого объекта.

Если вы не хотите использовать библиотеку, не забудьте обернуть сопоставления на фабриках, чтобы, по крайней мере, код был централизованным и легко обнаруживаемым, но при этом оставался подверженным ошибкам. Использование конструкторов вместо инициализаторов объектов также помогает находить сопоставления во время компиляции.

...