gpt4 book ai didi

sdk - Intuit QBO SDK Update Bill 生成 XML 文档时出错,ItemElementName 的值与 System.Decimal 的类型不匹配

转载 作者:行者123 更新时间:2023-12-04 14:24:55 24 4
gpt4 key购买 nike

我正在使用 Intuit QBO SDK v3 Intuit.Ipp.QueryFilter.QueryService(Of Bill) 来获取由 Bill.Id 过滤的账单集合。集合已成功填充。我只想修改 Bill 的某些 ItemBasedExpenseLineDetail 成员的 BillableStatus 并使用 Intuit.Ipp.DataService.DataService.Update(Of Bill) 更新它。无论我是否真的修改了 Bill 的任何属性,Update 方法都会生成以下错误:

Intuit.Ipp.E​​xception.SerializationException:生成 XML 文档时出错。 ---> System.InvalidOperationException: 生成 XML 文档时出错。 ---> System.InvalidOperationException: ItemElementName 的值与 System.Decimal 的类型不匹配;您需要将其设置为 Intuit.Ipp.Data.ItemChoiceType.@UnitPrice。
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterBill.Write163_ItemBasedExpenseLineDetail(String n, String ns, ItemBasedExpenseLineDetail o, Boolean isNullable, Boolean needType)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterBill.Write181_Line(String n, String ns, Line o, Boolean isNullable, Boolean needType)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterBill.Write185_Bill(String n, String ns, Bill o, Boolean isNullable, Boolean needType)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterBill.Write186_Bill(Object o)
--- 内部异常堆栈跟踪结束 ---
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id)
在 System.Xml.Serialization.XmlSerializer.Serialize(Stream stream, Object o, XmlSerializerNamespaces namespaces)
在 Intuit.Ipp.Utility.XmlObjectSerializer.Serialize(对象实体)
--- 内部异常堆栈跟踪结束 ---
在 Intuit.Ipp.Utility.XmlObjectSerializer.Serialize(对象实体)
在 Intuit.Ipp.Core.Rest.RestHandler.PrepareRequest(RequestParameters requestParameters, Object requestBody, String oauthRequestUri)
在 Intuit.Ipp.DataService.DataService.Update[T](T entity)

Bill 的所有 ItemBasedExpenseLineDetail 成员的值似乎正确地是 Intuit.Ipp.Data.ItemChoiceType.UnitPrice,如 Watch 或 Immediate Window 所示,例如:

?DirectCast(qboItem.Line(0).AnyIntuitObject, Intuit.Ipp.Data.ItemBasedExpenseLineDetail).ItemElementName

单价{2}

任何想法如何在没有此错误的情况下执行更新或在哪里查看?

最佳答案

Aaaaaand,大约在我发布这个问题后,我就在 Intuit.Developer Community 上找到了答案

I guess you have the default setting from SDK where request format is XMl and response is Json.

This causes serialization issues which you have mentioned above.

Please add the following lines in your code to have either both request/response in xml or boht in json format.

context.IppConfiguration.Message.Request.SerializationFormat = Intuit.Ipp.Core.Configuration.SerializationFormat.Json;

context.IppConfiguration.Message.Response.SerializationFormat = Intuit.Ipp.Core.Configuration.SerializationFormat.Json;

关于sdk - Intuit QBO SDK Update Bill 生成 XML 文档时出错,ItemElementName 的值与 System.Decimal 的类型不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28304505/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com