只允许特定的电子邮件地址
本文关键字:电子邮件地址 许特定 | 更新日期: 2023-09-27 18:29:39
我正在进行一个MVC项目,需要验证特定组的电子邮件地址。例如,只有那些emailID@stanford.edu可以注册。我确实尝试了数据注释,但它只验证电子邮件地址,而不是子字符串。如何检查电子邮件地址是否包含@stanford.edu?提前谢谢。
因此,根据建议,我尝试了这个,但在构建过程中出现了错误:找不到可重写的合适方法。我试过了。
/*
* Attribute to validate schools
*/
public class ValidateSchoolAttribute : ValidationAttribute
{
public string stanfordEmail { get; set; }
public string harvardEmail { get; set; }
public override bool IsValid(String value)
{
if (value == null){
return true;
}
char[] delimiterCharacter = { '@' };
String text = value;
String[] words = text.Split(delimiterCharacter);
if( words.Equals("stanford.edu") ||words.Equals("harvard.edu") ){
return true;
}
else{
return false;
}
}
}
您可以使用[RegularExpression]
属性
[RegularExpression(@".*@(harvard|stanford)'.edu")]
[EmailAddress]
public string Email { get; set; }
您应该创建自定义验证属性。
像这个
public class OnlyStanfordEmailAttribute: ValidationAttribute
然后覆盖CCD_ 3功能。
如果你也想要客户端验证,你可以按照这个教程