1

在我的 ASP.NET 网站用户模型中,我希望 GuidId和 StringUserName都是唯一的。我将使用实体框架将我的模型对象映射到数据库。

在 ASP.NET MVC 中是否有促进这种常见约束的内置属性或其他机制?还是我必须在用户注册表单上手动检查用户名的唯一性?

4

2 回答 2

3

首先,在我看来,MVC 或您的前端应用程序不应该为此负责。

唯一 ID 和唯一用户名是应该在数据库上实施的约束,否则,您假设注册用户的唯一方法是从您的网站。

实体框架具有强制执行唯一约束的属性。更多信息在这里:http: //blogs.msdn.com/b/efdesign/archive/2011/03/09/unique-constraints-in-the-entity-framework.aspx

最后,关于您的用户 ID,我会考虑在数据库中自动生成这些,而不是在您的前端应用程序中。

于 2012-02-18T00:17:29.893 回答
0

可能有一些内置的东西,但是检查唯一值是一两行,因为您使用的是 EF。

bool uniqueGuid = Users.Any(u => u.Id == "guid");
bool uniqueUser = Users.Any(u => u.UserName == "username");
于 2012-02-17T12:38:04.430 回答