SalesForce API Soap 在 Visual Studio 上创建()一个附件
SalesForce API Soap create() an Attachment on Visual Studio
我开始在一个项目中使用 SalesForce SOAP API Enterprise,但我卡在了 create() 方法上。
Whosebug 上关于此问题的许多答案似乎已经过时,因为此 API 上的 create() 不再像过去那样仅接收 SObject。
我创建了所有这些对象,但我在 PackageVersion[] 和 LimitInfo[] 上遇到问题,我从服务器收到空响应。
这是我正在做的事情:
client = new SoapClient("Soap1", endpoint);
String sqlQuery = "SELECT ID, CloseDate, StageName, Name FROM Opportunity";
QueryResult qr = new QueryResult();
client.query(header, null, null, null, sqlQuery, out qr);
Attachment att = new Attachment();
byte[] pdf = File.ReadAllBytes("D:\teste.pdf");
att.Body = pdf;
att.Name = "Attachment Teste";
att.Parent = qr.records[0];
att.ParentId = qr.records[0].Id;
DebuggingInfo debug = client.create(header, assignHeader, mruHeader,
allowField, disableFeed, streamingHeader, allOrNoneheader, duplicateHeader,
localeOptions, debugHeader, packVersion, emailHeader,new sObject[] { att },
out limitInfo, out saveResult);
我正在创建所有这些对象,如下所示:
private static SessionHeader header = new SessionHeader();
private static AssignmentRuleHeader assignHeader = new AssignmentRuleHeader();
private static MruHeader mruHeader = new MruHeader();
private static AllowFieldTruncationHeader allowField = new AllowFieldTruncationHeader();
private static DisableFeedTrackingHeader disableFeed = new DisableFeedTrackingHeader();
private static StreamingEnabledHeader streamingHeader = new StreamingEnabledHeader();
private static AllOrNoneHeader allOrNoneheader = new AllOrNoneHeader();
private static DuplicateRuleHeader duplicateHeader = new DuplicateRuleHeader();
private static LocaleOptions localeOptions = new LocaleOptions();
private static DebuggingHeader debugHeader = new DebuggingHeader();
private static PackageVersion[] packVersion;
private static EmailHeader emailHeader = new EmailHeader();
private static LimitInfo[] limitInfo;
private static SaveResult[] saveResult;
谁能告诉我是否还有另一个 WSDL 具有仅将 SObject 作为参数的 create()?
如果没有,谁能帮忙举个例子或解释一下这个 create() 方法?
salesforce.com 上的文档似乎已经过时,因为那里的 create() 方法只接收一个 SObject。
谢谢。
你试过这种方法吗?
SforceService binding = new SforceService();
binding.login("xxx", "yyy");
binding.SessionHeaderValue = new Service.SessionHeader();
binding.SessionHeaderValue.sessionId = "sessionId";
binding.Url = "serverUrl";
binding = service.query(String.Format("select id, whoid...."))
var bindingSize = binding.size;
foreach (var sObject in binding.records) {...}
我开始在一个项目中使用 SalesForce SOAP API Enterprise,但我卡在了 create() 方法上。
Whosebug 上关于此问题的许多答案似乎已经过时,因为此 API 上的 create() 不再像过去那样仅接收 SObject。
我创建了所有这些对象,但我在 PackageVersion[] 和 LimitInfo[] 上遇到问题,我从服务器收到空响应。
这是我正在做的事情:
client = new SoapClient("Soap1", endpoint);
String sqlQuery = "SELECT ID, CloseDate, StageName, Name FROM Opportunity";
QueryResult qr = new QueryResult();
client.query(header, null, null, null, sqlQuery, out qr);
Attachment att = new Attachment();
byte[] pdf = File.ReadAllBytes("D:\teste.pdf");
att.Body = pdf;
att.Name = "Attachment Teste";
att.Parent = qr.records[0];
att.ParentId = qr.records[0].Id;
DebuggingInfo debug = client.create(header, assignHeader, mruHeader,
allowField, disableFeed, streamingHeader, allOrNoneheader, duplicateHeader,
localeOptions, debugHeader, packVersion, emailHeader,new sObject[] { att },
out limitInfo, out saveResult);
我正在创建所有这些对象,如下所示:
private static SessionHeader header = new SessionHeader();
private static AssignmentRuleHeader assignHeader = new AssignmentRuleHeader();
private static MruHeader mruHeader = new MruHeader();
private static AllowFieldTruncationHeader allowField = new AllowFieldTruncationHeader();
private static DisableFeedTrackingHeader disableFeed = new DisableFeedTrackingHeader();
private static StreamingEnabledHeader streamingHeader = new StreamingEnabledHeader();
private static AllOrNoneHeader allOrNoneheader = new AllOrNoneHeader();
private static DuplicateRuleHeader duplicateHeader = new DuplicateRuleHeader();
private static LocaleOptions localeOptions = new LocaleOptions();
private static DebuggingHeader debugHeader = new DebuggingHeader();
private static PackageVersion[] packVersion;
private static EmailHeader emailHeader = new EmailHeader();
private static LimitInfo[] limitInfo;
private static SaveResult[] saveResult;
谁能告诉我是否还有另一个 WSDL 具有仅将 SObject 作为参数的 create()?
如果没有,谁能帮忙举个例子或解释一下这个 create() 方法?
salesforce.com 上的文档似乎已经过时,因为那里的 create() 方法只接收一个 SObject。
谢谢。
你试过这种方法吗?
SforceService binding = new SforceService();
binding.login("xxx", "yyy");
binding.SessionHeaderValue = new Service.SessionHeader();
binding.SessionHeaderValue.sessionId = "sessionId";
binding.Url = "serverUrl";
binding = service.query(String.Format("select id, whoid...."))
var bindingSize = binding.size;
foreach (var sObject in binding.records) {...}