Build queries with LINQ (.NET language-integrated query)

You can use .NET Language-Integrated Query (LINQ) to write queries in Common Data Service. You can use the OrganizationServiceContext class or a deriving class created by the CrmSvcUtil tool to write LINQ queries that access the SOAP endpoint (Organization.svc). The OrganizationServiceContext class contains an underlying LINQ query provider that translates LINQ queries from Visual C# or Visual Basic .NET syntax into the query API used by Common Data Service.

When you use early-bound programming classes you can generate a class derived from the OrganizationServiceContext class if you specify the name of the class using the servicecontextname parameter when using the Code Generation Tool (CrmSvcUtil.exe). Use of this class allows for referencing an IQueryable entity set using the pattern <entity schema name>+Set, for example AccountSet to reference the collection of Account entity records. All samples in the Common Data Service Web Services, use ServiceContext as the name for this class but your code may use a different name. More information: Generate early-bound classes for the Organization service).

See Also

Use LINQ to Construct a Query

Use Late-Bound Entity Class with a LINQ Query

Use Entity Lookup Attributes with LINQ

LINQ query examples