ASP.NET MVC 4, EF5, Code First, SQL Server 2012 ЭкспрессASP.NET MVC 4, EF5, уникальное свойство в модели - лучшая практика?
Что лучше практика для обеспечения уникального значения в модели? У меня есть класс мест, у которого есть свойство url, которое должно быть уникальным для каждого места.
public class Place
{
[ScaffoldColumn(false)]
public virtual int PlaceID { get; set; }
[DisplayName("Date Added")]
public virtual DateTime DateAdded { get; set; }
[Required(ErrorMessage = "Place Name is required")]
[StringLength(100)]
public virtual string Name { get; set; }
public virtual string URL { get; set; }
};
Почему нет только уникальной аннотации данных, которую вы можете разместить на ней?
Я видел 1 или 2 обсуждения этого вопроса, но не говорил о лучшей практике. Используя Code First, вы можете каким-то образом сообщить базе данных о том, чтобы установить уникальное ограничение в поле в базе данных?
Что является самым простым способом - и что является лучшей практикой?
Интересно.Поэтому мне нужно будет использовать это только для любых уникальных свойств - все остальное может оставаться как есть, обычный код First right? Охватывает ли это все базы, условия гонки, 100% надежную уникальность в базе данных и т. Д.? – niico
Мне также нужно установить пакет fluentvalidation nuget? – niico
Этот пример будет работать с POCO без проблем, я использую это во всех своих проектах. Как вы можете видеть, он проверяет uniquness в базе данных на 'TryValidateModel()', после которого вы обычно вызываете '_db.SaveChanges();' поэтому в основном нет латентности вообще. Да, конечно, вам понадобится пакет nuget. – sed