asp.net-mvc – ASP.NET MVC验证的唯一性
发布时间:2020-05-24 22:56:42 所属栏目:asp.Net 来源:互联网
导读:Rails具有非常方便的唯一性验证. ASP.NET MVC没有. 我需要确保用户输入的电子邮件地址尚未被任何人注册. 我只能看到一种进行这种验证的方法:在UniqueAttribute类中创建一个新的数据上下文对象. 但是我担心浪费一个新的数据上下文对象的记忆只是一个验证是危
|
Rails具有非常方便的唯一性验证. ASP.NET MVC没有. 我需要确保用户输入的电子邮件地址尚未被任何人注册. 我只能看到一种进行这种验证的方法:在UniqueAttribute类中创建一个新的数据上下文对象. 但是我担心浪费一个新的数据上下文对象的记忆只是一个验证是危险的. 我错了吗?有没有更好的方法呢? 更新 这是我到目前为止 public class UniqueEmailAttribute : ValidationAttribute {
public override bool IsValid(object value) {
DataContext db = new DataContext();
var userWithTheSameEmail = db.Users.SingleOrDefault(
u => u.Email == (string)value);
return userWithTheSameEmail == null;
}
}
// Usage
[UniqueEmail(ErrorMessage="This e-mail is already registered")]
public string Email { get; set; }
有两个问题. 只要有一个UniqueAttribute类就可以了,而不是用于电子邮件,用户名等的类别.我该怎么做? 解 所以最后我在表上创建了一个唯一的约束,现在我只需要拦截Users库中的SqlException.工作很好,可能比在整个表中搜索同一个节点效率更高.谢谢! 解决方法这样做的一个愚蠢的方法是创建一个验证属性,该属性将查询数据库的电子邮件地址.这肯定会增加延迟.一个替代方法是在表上创建一个唯一的约束并拦截SqlException. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-4 – Elmah.MVC 2.0.1 – 保护elmah日志
- ASP.NET和System.Diagnostics跟踪 – 我错过了什么,或者这是
- asp.net-mvc – ASP.NET MVC – 用于ICollection的EditorTe
- 在IIS上部署ASP.NET Core项目的图文方法
- asp.net-mvc-4 – MVC 4日期文化问题?
- asp.net-mvc – ASP.NET MVC – 如何获取一个动作的完整路径
- asp.net – 初学者有一个好主意 – 我可以自己开发吗?
- asp.net – 如何通过ADO.NET运行我的.sql脚本文件?
- 如果DataSource不包含任何项目,如何在ASP.NET C#中隐藏转发
- 企业ASP.NET MVC 3架构大纲
推荐文章
站长推荐
- 在ASP.NET MVC中获取原始请求
- asp.net – DirectoryServicesCOMException 8007
- ASP.NET MVC – Ajaxified RenderAction
- ASP.net MVC ValidationSummary总是被渲染
- asp.net-mvc – MSFT报告查看器(rdlc)是否可以使
- 获取当前ASP.NET Web Api 2操作的URL
- ASP.net检查页面是http还是https
- asp.net-mvc-3 – 模型绑定逗号分隔的查询字符串
- asp.net – 如何使用jQuery清除DIV中的所有文本框
- asp.net-mvc-4 – .net 4.5 ASP.Net web API JSO
热点阅读
