zoukankan      html  css  js  c++  java
  • 解决方法:Submit 操作失败。为类型“BomExtend”上的集合属性“BomChildrenList”传递了一个或多个关联对象,但目标集合为 null。

    实体:BomExtend为自定义实体

    属性:BomChildrenList为自定义实体BomExtend的一个属性

       [DataContract]
        public class BomExtend
        {
            [Key, DataMember]
            public Guid Number { getset; }
     
            [DataMember]
            public Guid ParentNumber { getset; }

            [DataMember]
            [Association("Bomchildren""Number""ParentNumber")]
            [Include]
            public List<BomExtend> BomChildrenList { getset; }

        }

    当在客户端添加数据并且保存时提示错误:

    System.ServiceModel.DomainServices.Client.DomainOperationException:
    Submit 操作失败。为类型“BomExtend”上的集合属性“BomChildrenList”传递了一个或多个关联对象,但目标集合为 null。

    客户端添加数据代码:

            BomExtend childBomExtend = new BomExtend();
            childBomExtend.Number = Guid.NewGuid();
            //parentBomExtend为父RowEntity   
            childBomExtend.ParentNumber = parentBomExtend.Number;
            parentBomExtend.BomChildrenList.Add(childBomExtend);

     当SubmitChange后,提示错误

    错误原因:

    silverlight客户端在增加新childBomExtend 时,仅仅是对某一个数据实体的BomChildrenList属性增加一个记录,而这个属性赋值后并不能传回到DomainService对应的方法,(具体原因不清楚)反正是不能传递,所以DomainServices报了一个异常

    解决办法:

    修改客户端代码:

            BomExtend childBomExtend = new BomExtend();
            childBomExtend.Number = Guid.NewGuid();
            //parentBomExtend为父RowEntity   
            childBomExtend.ParentNumber = parentBomExtend.Number;
            parentBomExtend.BomChildrenList.Add(childBomExtend);
            _domainServicesClient.BomExtends.Add(childBomExtend);

     问题解决!!

  • 相关阅读:
    Java基础(九)--反射
    Java基础(八)--String(源码)、StringBuffer、StringBuilder
    Java基础(七)--Exception异常处理
    Java基础(五)--内部类
    Redis系列(十一)--阿里云开发规范
    Java基础(四)--接口和抽象类
    Java基础(三)--final关键字
    生成count个[0-n)不重复的随机数
    Java基础(二)--this关键字及初始化
    十大Intellij IDEA快捷键(附IDEA快捷键详细列表及使用技巧)
  • 原文地址:https://www.cnblogs.com/starlet/p/2210385.html
Copyright © 2011-2022 走看看