2015-11-02 56 views
1

我正在尝试调用Salesforce Parnter wsdl来通过我的c#代码创建潜在客户。使用ASP.net调用Salesforce API来添加潜在顾客

但它给我的错误: 无法隐式转换类型的联系[]”到 'sforce.sObject'

private string userID = "[email protected]"; 
private string password = "sadwdasdasdasdsadasdsxzdddw"; 
private DateTime _nextLoginTime; 
private string _sessionId; 
string url="valueleads.in/pushleads/websvc/cigna/wsdl.xml"; 
SforceService binding; 
private void getSessionInfo() 
      { 
       sforce.SforceService partnerService = new sforce.SforceService(); 
       sforce.LoginResult lr = new sforce.LoginResult(); 

       lr = partnerService.login(userID, password); 
       _sessionId = lr.sessionId; 
       Session["_sessionId"] = lr.sessionId; 
       Session["_serverUrl"] = lr.serverUrl; 
       Session["_nextLoginTime"] = DateTime.Now; 
       binding.SessionHeaderValue = new sforce.SessionHeader(); 
       binding.SessionHeaderValue.sessionId = _sessionId; 
       binding.Url = lr.serverUrl; 
      } 

      public bool IsConnected() 
      { 
       bool blnResult = false; 
       if (!string.IsNullOrEmpty(_sessionId) & _sessionId != null) 
       { 
        if (DateTime.Now > _nextLoginTime) 
         blnResult = false; 
        else 
         blnResult = true; 
       } 
       else 
        blnResult = false; 

       return blnResult; 
      } 


      public void create() 
      { 
       if (!IsConnected()) 
       { 
        getSessionInfo(); 
       } 

       binding = new SforceService(); 
       Contact contact=new Contact(); 
       contact.fname="Eric"; 
       contact.lname="Peter"; 
       contact.mobile="9898989889"; 

       Contact[] contacts = { contact }; 
       string result; 
       sforce.SaveResult[] createResults = binding.create(new sObject[] { contacts }); 
       if (createResults[0].success) 
       { 
        result = createResults[0].id; 
       } 
       else 
       { 
        result = createResults[0].errors[0].message; 
       } 
       Response.Write(result); 
      } 
     } 

     public class Contact 
     { 
      public String fname { get; set; } 
      public String lname { get; set; } 
      public String mobile { get; set; } 
     } 

     } 

请大家帮忙,非常新的,以该Salesforce的API。

回答

1

您需要创建SObjects数组,不接触,所以做

sforce.sObject[] contacts = { contact }; 
string result; 
sforce.SaveResult[] createResults = binding.create(contacts); 
+0

我想它仍然给其上线相同的错误 –

+0

? – superfell

+0

sforce.sObject [] contacts = {contact};在联系变量和最后一行,我已经在binding.create(contacts)中使用过联系人; –