这是我的一个Entityclasses:
public class Customer
{
public int Id { get; set; }
[Required]
public int CustomerNumber { get; set; }
[Required]
[StringLength(50)]
public string Prename { get; set; }
[StringLength(50)]
public string Surname { get; set; }
public DateTime? Birthday { get; set; }
public bool Active { get; set; }
[Column(TypeName = "image")]
public byte[] Image { get; set; }
}
添加对象后,我使用以下行保存更改:
((IObjectContextAdapter)context).ObjectContext.SaveChanges();
一切正常,我能够拯救顾客..
现在我必须将其更改为以下内容:
context.SaveChanges();
我发现,我之前的行没有验证,只有第二行验证,因为它继承自DbContext
现在我遇到的问题是我无法再保存客户了,原因是我在context.SaveChanges();
行有例外。
在EntityValidationError
我发现以下错误: ErrorMessage =“字段图片必须是字符串或数组类型,最大长度为'4000'。”
我知道我的问题是,我怎样才能避免仅验证这一个实体..?我知道有可能避免验证整个实体,但这不是主意。我希望有人可以帮助我,我被困在这一个......
答案 0 :(得分:1)
您可以使用CustomValidationAttribute。 Here就是一个例子。
你可以创建一个只返回成功的方法。
答案 1 :(得分:0)
您还可以通过将上下文中的ValidateOnSaveEnabled
配置属性设置为false
来禁用验证:
Context.Configuration.ValidateOnSaveEnabled = false;