2009-08-04 221 views
0

驗證模型唯一性的最佳方法是什麼?例如,確保只有一個用戶可以擁有某個用戶名。ASP.NET MVC - 驗證模型的唯一性

我正在使用存儲庫模式與數據庫交互,所以我應該把檢查int放在那裏?如果是這樣,我如何得到這個過濾回模型?

感謝

+0

爲什麼你不只是發佈一些代碼?模式是一件抽象的事情...... – User 2009-08-04 13:04:36

回答

0

添加一個方法你UserRepository查找用戶名是否在使用中。 UserRepository可以在User.Save上執行此驗證.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 2009-08-04 13:34:24