相关疑难解决方法(0)

实体框架/ MVC3:暂时禁用验证

我正在使用EF Code First.我大量使用代码注释来指定如何验证数据(模型).但是,我通常只需要在UI层进行验证,并且能够在代码中将某些数据保存到数据库时禁止验证.但是,一旦我指定了验证规则,它们就会应用于任何地方 - 在UI上,数据库上,数据访问层上.

我可以暂时禁用EF层的模型验证,这样我就可以使用保存数据SaveChanges()而不会获得验证异常吗?

.net orm entity-framework ef-code-first entity-framework-4.1

33
推荐指数
1
解决办法
1万
查看次数

附加更新实体框架

我正在尝试使用附加使用EF 5.x对表进行更新.此表包含其他所需的字段,但它是现有行.所以我试图更新没有任何提取.userid是表的主键.我正在尝试更新状态.但它会抛出一个EntityValidationErrors,表示需要密码,这是另一个必填字段,但不是主键.由于这是对现有行的更新,为什么需要提供需要更新的字段?

    var webUser = new WebUser() { UserId = webUserId, OnlineStatus = (sbyte)status };
    using (var dbxupdate = new xEntities())
    {
        try
        {
            dbxupdate.WebUsers.Attach(webUser);
dbxupdate.Entry(webUser).State = EntityState.Modified;
            dbxupdate.Entry(webUser).Property(x => x.OnlineStatus).IsModified = true;
            dbxupdate.SaveChanges();
        }
        catch (DbEntityValidationException dbEx)
        {
            foreach (var validationErrors in dbEx.EntityValidationErrors)
            {
                foreach (var validationError in validationErrors.ValidationErrors)
                {
                    Trace.TraceInformation("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage);
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# ado.net entity-framework

8
推荐指数
2
解决办法
2万
查看次数