проверка дублирования названия объекта - PullRequest
0 голосов
/ 18 ноября 2009

У меня есть проект в asp net mvc. Сущность под названием продукт не может иметь похожие названия. Как я следую шаблону репозитория, где лучшее место, чтобы проверить дублирование?

Я могу сделать это в контроллере, но это приведет к жирному контроллеру.

Ответы [ 2 ]

1 голос
/ 18 ноября 2009

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

Что касается обеспечения соблюдения правила в коде, как вы в настоящее время обрабатываете проверку? Это определенно относится к этой категории.

1 голос
/ 18 ноября 2009

Я предполагаю, что вы используете сервер БД? Установите уникальное ограничение на столбец БД. Выполнение этого в репозитории или контроллере приводит к проблемам с параллелизмом (другая транзакция, которую вы не видите, поскольку она еще не зафиксирована, могла уже вставить дублирующее значение). Ограничения могут видеть сквозь это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...