Принуждение идентификатор и имя пользователя быть уникальным в модели ASP.NET MVC 3

StackOverflow https://stackoverflow.com/questions/9328075

Вопрос

В моей модели пользователей веб -сайта ASP.NET я хочу оба GUID Idи строка UserNames, чтобы быть уникальным. Я собираюсь отобразить свои объекты модели с БД, используя структуру сущности.

Есть ли встроенный атрибут или какой-то другой механизм, который облегчает это общее ограничение в ASP.NET MVC? Или я обязан вручную проверять уникальность пользователя в форме регистрации пользователя?

Это было полезно?

Решение

Во -первых, по моему мнению, MVC или ваше фронтальное приложение не должно нести ответственность за это.

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

Framework Entity имеет атрибуты для обеспечения уникальных ограничений. Подробнее здесь: http://blogs.msdn.com/b/efdesign/archive/2011/03/09/unique-constraints-in-the-entity-framework.aspx

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

Другие советы

Там может быть что-то встроенное, но проверка уникальных значений-это одна или две строки, так как вы используете EF.

bool uniqueGuid = Users.Any(u => u.Id == "guid");
bool uniqueUser = Users.Any(u => u.UserName == "username");
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top