У меня очень простая модель, которая должна быть проверена с помощью базы данных
public class UserAddress
{
public string CityCode {get;set;}
}
CityCode
может иметь значения, доступные только в моей таблице базы данных.
Я знаю, что могу сделать что-то вроде.
[HttpPost]
public ActionResult Address(UserAddress model)
{
var connection = ; // create connection
var cityRepository = new CityRepository(connection);
if (!cityRepository.IsValidCityCode(model.CityCode))
{
// Added Model error
}
}
Это кажется очень WET
, поскольку я должен использовать эту модель во множестве помещенных и добавляя одну и ту же логику. Кажется, что я не использую MVC Architecture должным образом.
Итак, каков наилучший образец для проверки модели из базы данных?
Примечание:
Большая часть проверки - это однопоточный поиск из базы данных, другая проверка может включать в себя комбинацию поля. Но сейчас я доволен проверкой единственного поля поиска, если он DRY
и не использует слишком много отражения, это приемлемо.
НЕТ КЛИЕНТА СТОРОНЫ: Для всех, кто отвечает с точки зрения проверки на стороне клиента, мне не нужна такая проверка, большая часть моей проверки является односторонней, и мне нужно то же самое, пожалуйста, не отвечайте с помощью методов проверки на стороне клиента.
P.S. Если кто-нибудь может дать мне подсказку о том, как выполнить проверку на основе атрибута из базы данных, будет чрезвычайно полезно.