代码之家  ›  专栏  ›  技术社区  ›  Peet Brits

Silverlight 4域服务-EntitiesInError-EntityConflict-PropertyNames引发InvalidOperationException

  •  0
  • Peet Brits  · 技术社区  · 16 年前

    追随 introductory tutorial 对于Silverlight4 RIA中的新DomainService,我遇到了意外的异常。当我执行更新属性时 EntitiesInError[index].EntityConflict.PropertyNames 引发以下异常:

    InvalidOperationException:属性名不可用于删除冲突。

    执行的服务方法:

    public void UpdateSr_Supplier(sr_Supplier currentsr_Supplier)
    {
        // UPDATE the existing sr_Supplier
        this.ObjectContext.sr_Supplier.AttachAsModified(currentsr_Supplier, this.ChangeSet.GetOriginal(currentsr_Supplier));
    }
    

    从答案开始 this thread 我认为我更应该将启用Silverlight的服务与自定义服务对象一起使用。( DataContract DataMember ,然后将这些自定义服务对象的值分配给实际的服务器对象(从数据库模型生成,即LINQ to SQL或实体数据模型),并手动调用 SubmitChanges() 在DataContext上。

    1 回复  |  直到 15 年前
        1
  •  0
  •   Sprague    15 年前

    如果处理的错误是删除冲突,则propertyname将引发异常,这是正常的。您应该查找基础数据库错误,可能忽略了设置非空值或主键冲突等。