Написание метода службы по сравнению с написанием Ivalidatable объекта
Я работаю над веб-приложением asp.net mvc, и мы должны проверить, вводит ли пользователь IP-адрес и / или Mac-адрес, который уже существует. В настоящее время я проверяю это, написав следующие методы обслуживания в моих методах действия POST Create & Edit:
bool ipunique = repository.ISiPUnique(sj.NetworkInfo.IPADDRESS, sj.Server. ServerID);
bool macunique = repository.ISmACUnique(sj.NetworkInfo.MACADDRESS, sj.Server. ServerID);
if (((sj.IsIPUnique == true) && !ipunique)
{
ModelState.AddModelError("NetworkInfo.IPAddress", "Error occurred. The Same IP is already assigned.");
}
if ((sj.IsMACUnique == true) && (!macunique))
{
ModelState.AddModelError("NetworkInfo.MACAddress", "Error occurred. The Same MAC Address is already assigned.");
}
Где оба sj.IsIPUnique
& sj.IsMACUnique
Это флажки, в которых пользователь будет проверять это, если он хочет проверить уникальность перед добавлением или редактированием записи, и если он не установит флажки, проверка уникальности не произойдет.
Но должен ли я оставить свой код как есть, или лучше выполнить эту проверку уникальности внутри объекта, который не может быть изменен, вместо использования методов службы?