A differenze del precedente Crm 3.0 , essendo quest'ultimo, multi società, ogni volta che ci collega al servizio del Crm è necessario passargli oltre alle solite credenziali anche un token con il riferimento alla societa (Organization)
CrmAuthenticationToken token = new CrmAuthenticationToken();
token.AuthenticationType = 0; // Use Active Directory authentication.
token.OrganizationName = "AdventureWorksCycle";
// Use the global user ID of the system user that is to be impersonated.
token.CallerId = new Guid("94092D6F-B367-DC11-9C93-0003FFDFCE28");
CrmService crmService = new CrmService();
crmService.Url = "http://localhost/MSCRMServices/2007/CrmService.asmx";
crmService.CrmAuthenticationTokenValue = token;
crmService.Credentials = System.Net.CredentialCache.DefaultCredentials;
// Create a new account owned by the impersonated user.
account account = new account();
account.name = "Fabrikam";
Guid accountid = crmService.Create(account);