Use XRM tooling with classes generated by using the code-generation tool

 

Applies To: Dynamics CRM 2013

The Microsoft.Xrm.Tooling.Connector assembly doesn’t directly provide interfaces for the entity and data context classes generated using the code-generation tool. However, you can use the Microsoft Dynamics CRM connection created by the CrmServiceClient class to set up your entity and data context classes by using the code-generation tool. More information: Generate code with the code generation tool extensions (Dynamics CRM 2013)

To use the CRM connection created by the CrmServiceClient class, create a connection to CRM by using an instance of this class, and then set the value of the OrganizationServiceProxy object to the CrmServiceClient.OrganizationServiceProxy property.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>",“<Domain>”),"<Server>", "<Port>", "<OrgName>");

// Verify that you are connected.
if (crmSvc != null && crmSvc.IsReady)
{
    //Display the CRM version number and org name that you are connected to
    Console.WriteLine("Connected to CRM! (Version: {0}; Org: {1}", 
    crmSvc.ConnectedOrgVersion, crmSvc.ConnectedOrgUniqueName);

    Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy prox = crmSvc.OrganizationServiceProxy; 
}
else
{
    // Display the last error.
    Console.WriteLine("Error occurred: {0}", crmSvc.LastCrmError);

    // Display the last exception message if any.
    Console.WriteLine(crmSvc.LastCrmException.Message);
    Console.WriteLine(crmSvc.LastCrmException.Source);
    Console.WriteLine(crmSvc.LastCrmException.StackTrace);

    return;
}

Note

The OrganizationServiceProxy class isn’t thread safe. While working with the entity and data context classes generated by using the code-generation tool or using .NET Language-Integrated Query (LINQ) to retrieve data, you might consider creating a locking scheme in your code if it runs in a multithreaded environment.

See Also

Use the IOrganizationService web service to read and write data or metadata
Build Windows client applications using the XRM tools