query出来的DynamicObject,不可用来直接保存,因为不含快照信息,会导致所有的记录操作都变成insert,BusinessDataServiceHelper.load出来的对象才可save
时间: 2024-03-28 18:40:43 浏览: 9
是的,您说得对。查询出来的DynamicObject对象不包含快照信息,因此如果直接将其用于保存操作,会导致所有记录的操作都变成insert。正确的做法是使用BusinessDataServiceHelper.load方法将查询出来的DynamicObject对象重新加载,这样可以将快照信息一并加载,然后再进行保存操作。这样才能确保记录的操作正确无误。
相关问题
Entity entity = this.Model.BillBusinessInfo.GetEntity("F_WWBG_Licenses"); int iCurRowIndex = this.View.Model.GetEntryCurrentRowIndex("F_WWBG_Licenses"); DynamicObject doEntity = this.View.Model.GetEntityDataObject(entity, iCurRowIndex); DynamicObjectType dotSaleOrder = doEntity.DynamicObjectType; DynamicObject LicenseType = dotSaleOrder.Properties["LicenseType"].GetValue<DynamicObject>(doEntity); string FID = LicenseType["Id"].ToString(); FormMetadata formMetadata = MetaDataServiceHelper.Load(base.Context, "WWBG_ZZLB", true) as FormMetadata; QueryBuilderParemeter queryBuilderParemeter = new QueryBuilderParemeter(); queryBuilderParemeter.BusinessInfo = formMetadata.BusinessInfo; queryBuilderParemeter.FilterClauseWihtKey = "FID =" + FID; DynamicObject[] array = BusinessDataServiceHelper.Load(base.Context, formMetadata.BusinessInfo.GetDynamicObjectType(), queryBuilderParemeter); DynamicObject dynamicObject = array[0];
根据你提供的代码,我看到你正在获取一个名为"F_WWBG_Licenses"的实体对象,并且在获取当前行索引后,通过该索引获取实体数据对象。接下来,你获取了实体数据对象的动态类型,然后从该动态类型的属性中获取名为"LicenseType"的属性值,并将其转换为DynamicObject类型。接着,你从LicenseType中获取了一个名为"FID"的属性,并将其转换为字符串类型。
然后,你加载了一个名为"WWBG_ZZLB"的表单元数据,并将其转换为FormMetadata类型。接着,你创建了一个QueryBuilderParemeter对象,并设置了其BusinessInfo属性为上述表单元数据。你还设置了FilterClauseWihtKey属性为"FID = " + FID,即以"FID"字段等于上述获取的FID值作为过滤条件。
最后,你使用BusinessDataServiceHelper.Load方法加载了数据,并将结果存储在一个DynamicObject类型的数组中,然后取出第一个元素存储在dynamicObject变量中。
金蝶云苍穹dynamicobject
金蝶云苍穹DynamicObject(简称DO)是一款用于企业信息化的云端应用开发平台。它是金蝶集团基于多年的行业经验和技术积累,结合云计算与大数据技术开发出的一款灵活可扩展的云端应用开发平台。
金蝶云苍穹DO具有以下特点和优势:
1. 强大的灵活性:金蝶云苍穹DO支持自定义数据模型和业务逻辑,可以根据企业的特定需求定制开发应用,满足不同企业的个性化需求。
2. 快速开发:金蝶云苍穹DO采用可视化开发方式,通过拖拽组件和设定属性等简单操作,可以快速搭建和部署云端应用,大大减少了开发周期。
3. 高可扩展性:金蝶云苍穹DO提供了丰富的扩展接口和插件机制,支持与其他系统进行集成,可以无缝连接企业的现有系统,提高系统整合效率。
4. 多租户支持:金蝶云苍穹DO采用多租户架构,可以为不同的企业提供云端服务,实现资源共享和成本的优化。
5. 安全可靠:金蝶云苍穹DO采用数据隔离、权限管理和灾备备份等措施,确保企业数据的安全性和可靠性。
金蝶云苍穹DynamicObject的应用领域非常广泛,包括企业ERP、CRM、财务、人力资源和供应链等多个领域。通过金蝶云苍穹DO,企业可以快速构建和运营自己的云端应用,提高业务效率和管理水平,实现数字化转型。