我正在使用nSoftware与QuickBooks进行交互。我的要求是仅更新客户的信用卡到期月份和年份。用于此的代码是
nsoftware.InQB.Customer cust = new nsoftware.InQB.Customer();
cust.GetByName("test");
cust.CreditCard.ExpMonth = customer.CreditCardItem.CardExpMonth;
cust.CreditCard.ExpYear = customer.CreditCardItem.CardExpYear;
cust.Update();
问题是GetByName方法返回客户对象,其信用卡号如“xxxxxxxxxxxxxx1234”。更新客户对象使用xxx更新实际信用卡号码.1234。我的要求是只更新到期月份和年份。
开发环境: - ASP.Net 4.0,C#
答案 0 :(得分:0)
修改信用卡字段并调用更新方法将导致所有卡片字段都发送到QuickBooks,包括“xxxxxxxxxxxx1234”卡号。在这种情况下,可以指定新的 QBCard 对象,以确保只有您明确打算更新的信用卡字段才会发送到QuickBooks。
所以,这样的事情应该可以解决问题:
nsoftware.InQB.Customer cust = new nsoftware.InQB.Customer();
cust.GetByName("test");
QBCard card = new QBCard();
card.ExpMonth = customer.CreditCardItem.CardExpMonth;
card.ExpYear = customer.CreditCardItem.CardExpYear;
cust.CreditCard = card;
cust.Update();
如果这对你有用,请告诉我。