我有以下代码来插入记录(我将插入1000个)。我获得了成功的插入,但所有数字字段在salesforce中都是EMPTY。一个文本字段工作正常(“兰迪教堂”)并出现在salesforce中。我有什么想法可能做错了吗?
public void InsertTestRecord()
{
ChurchHist__c ch = new ChurchHist__c();
ch.ChurchId__c = 9999;
ch.ChurchName__c = "Church of Randy";
ch.ReportYear__c = 2013;
ch.ReportMonth__c = 08;
ch.RegisteredMembers__c = 777;
ch.ActiveMembers__c = 111;
ch.InactiveMembers__c = 666;
ch.UsersForMonth__c = 25;
ch.ContribForMonth__c = 789.01;
ch.ContribYTD__c = 200000.02;
ch.AchContrib__c = 200000.00;
ch.CcContrib__c = 0.02;
ch.AchToCc__c = 0.12345;
sObject[] s = new sObject[1];
s[0] = ch;
try
{
SaveResult[] saveResult = binding.create(s);
if (saveResult[0].success)
{
Debug.Print("Success");
}
else
{
foreach (Error error in saveResult[0].errors)
{
Debug.Print(error.statusCode.ToString());
Debug.Print(error.message);
}
}
}
catch (SoapException se)
{
Debug.Print(se.ToString());
}
}
答案 0 :(得分:2)
您需要设置指定的标志,例如numeric属性有一个关联的指定标志,用于控制.NET soap引擎是否实际通过线路发送该属性,但该属性的setter不会自动设置指定的标志。 e.g。
ch.ChurchId__c = 9999;
ch.ChurchId__cSpecified = true;
ch.reportyear__c = 2013;
ch.reportyear__cSpecified = true;
指定的标志是某些类型的.NET soap系统的“功能”。 (数字和日期IIRC)。