mvc model 数据唯一性验证
如下自定义验证代码,可以满足新增记录时的唯一性检查:
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
public class UniqueAttribute:ValidationAttribute
{
public override Boolean IsValid(Object value)
{
//校验数据库是否存在当前Key
if (value != null)
{
return check(value );
}
return false;
}
private bool check(object o)
{
using (fwdbContext db = new fwdbContext())
{
{
return db.tb_Company.Where(item => item.CompanyCode == (string)o).Count() <= 0;
}
}
}
}
[Unique(ErrorMessage = "公司编号不允许重复")]
public string CompanyCode { get; set; }
但修改记录时,也会提示公司编号不允许重复。
请问如何实现此功能?(验证时如何知道当前的操作是新增还是修改)