2009-08-04 8 views
0

Что было бы лучшим способом проверить уникальность модели? Например, убедитесь, что только один пользователь может иметь определенное имя пользователя.ASP.NET MVC - Проверка уникальности модели

Я использую шаблон хранилища для взаимодействия с базой данных, поэтому я должен помещать туда чек? Если да, как это сделать, чтобы отфильтровать обратно в модель?

Благодаря

+0

Почему бы вам просто не опубликовать код? Шаблоны - такая абстрактная вещь ... – User

ответ

0

Добавить метод к вашему UserRepository для поиска, если UserName используется. UserRepository может выполнить эту проверку на User.Save

public class UserRepository { 

    private bool IsUserNameInUse(string userName) { 
    return false; 
    } 

    private bool IsUserNameInUse(int userId, string userName) { 
    // Verify no record other than the userid submitted is using the username 
    return false; 
    } 

    public void Save(User userToSave) { 
     if (IsUserNameInUse(userToSave.UserName)) throw new Exception(); 
    } 

} 
2

Вы также применяете это ограничение в базе данных?

+0

Нет, не сейчас. Поддерживает ли LINQ to SQL и что? – Ryan

+0

Этого я не знаю, но я обычно ставил эти ограничения в код и базу данных. –

Смежные вопросы