Я пытаюсь создать клиента, используя библиотеку QuickBooks .NET REST API v2. В вызове метода Add() объекта DATASERVICE подать запрос, я получаю сообщение об ошибке, что я не понимаю:Ошибка при попытке вставить клиента
"EntityManager must be access within a transaction"
погуглить сообщение об ошибке появляется несколько ударов по Java, но ни один из них не выглядит так, как будто они действительно затрагивают эту проблему, и я не нашел документацию в документации Intuit-Partner-Platform относительно сообщения.
using Intuit.Ipp.Data.Qbd;
OAuthRequestValidator oauthValidator = new OAuthRequestValidator(accessToken, accessTokenSecret, Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET);
ServiceContext context = new ServiceContext(oauthValidator, Constants.APP_TOKEN, realmID, IntuitServicesType.QBD);
DataServices dataServices = new DataServices(context);
var writeCust = new Customer()
{
Name = "Carlos Verdona",
TypeOf = partyType.Person,
Address = new PhysicalAddress[]
{
new PhysicalAddress()
{
Line1 = "217 Tarboro Highway",
Line2 = "Apt. D",
City = "Langleyville",
CountrySubDivisionCode = "NC",
PostalCode = "55712",
Tag = new string[]{"Billing"}
}
},
Phone = new TelephoneNumber[]
{
new TelephoneNumber()
{
DeviceType = "Work",
FreeFormNumber = "111-345-3456"
},
new TelephoneNumber()
{
DeviceType = "Mobile",
FreeFormNumber = "111-345-3457"
}
},
WebSite = new WebSiteAddress[]
{
new WebSiteAddress()
{
URI = "http://www.HorseBrains.com"
}
},
Email = new EmailAddress[]
{
new EmailAddress()
{
Address = "[email protected]"
}
},
GivenName = "",
MiddleName = "",
FamilyName = "",
DBAName = "",
ShowAs = "Carlos Verdona",
//CustomField = new CustomField[]
//{
// new BooleanTypeCustomField()
// {
// DefinitionId = "Bill With Parent",
// Value = true
// },
// new StringTypeCustomField()
// {
// DefinitionId = "Preferred Delivery Method",
// Value = "PRINT"
// }
//},
SalesTermId = new IdType() {idDomain = idDomainEnum.QBO, Value = "8" },
};
//Create Customer
Customer output = dataServices.Add(writeCust);
Спасибо за любой совет, который вы можете дать!
Привет Манасе, я не понимаю, что вы имеете в виду под «вы можете проверить с помощью простых сеттеры сущностей Customer « – DBallantyne
Я хотел сказать .. Клиент c = новый Клиент(); c.setName ("") .. Я думаю, что этот подход более читабельный (я думаю) и до построения объекта .. лучше проверить объект, используя apiexplorer. он помогает обнаруживать специфические ошибки XML или синтаксические ошибки. –