LINQ to BigCommerce Data



LINQ offers versatile querying capabilities within the .NET Framework (v3.0+), offering a straightforward method for programmatic data access through CData ADO.NET Data Providers. In this article, we demonstrate the use of LINQ to retrieve information from the BigCommerce Data Provider.

This article illustrates using LINQ to access tables within the BigCommerce via the CData ADO.NET Data Provider for BigCommerce. To achieve this, we will use LINQ to Entity Framework, which facilitates the generation of connections and can be seamlessly employed with any CData ADO.NET Data Providers to access data through LINQ.

See the help documentation for a guide to setting up an EF 6 project to use the provider.

  1. In a new project in Visual Studio, right-click on the project and choose to add a new item. Add an ADO.NET Entity Data Model.
  2. Choose EF Designer from Database and click Next.
  3. Add a new Data Connection, and change your data source type to "CData BigCommerce Data Source".
  4. Enter your data source connection information.

    BigCommerce authentication is based on the standard OAuth flow. To authenticate, you must initially create an app via the Big Commerce developer platform where you can obtain an OAuthClientId, OAuthClientSecret, and CallbackURL. These three parameters will be set as connection properties to your driver.

    Additionally, in order to connect to your BigCommerce Store, you will need your StoreId. To find your Store Id please follow these steps:

    1. Log in to your BigCommerce account.
    2. From the Home Page, select Advanced Settings > API Accounts.
    3. Click Create API Account.
    4. A text box named API Path will appear on your screen.
    5. Inside you can see a URL of the following structure: https://api.bigcommerce.com/stores/{Store Id}/v3.
    6. As demonstrated above, your Store Id will be between the 'stores/' and '/v3' path paramters.
    7. Once you have retrieved your Store Id you can either click Cancel or proceed in creating an API Account in case you do not have one already.

    Below is a typical connection string:

    OAuthClientId=YourClientId; OAuthClientSecret=YourClientSecret; StoreId='YourStoreID'; CallbackURL='http://localhost:33333'InitiateOAuth=GETANDREFRESH
  5. If saving your entity connection to App.Config, set an entity name. In this example we are setting BigCommerceEntities as our entity connection in App.Config.
  6. Enter a model name and select any tables or views you would like to include in the model.

Using the entity you created, you can now perform select , update, delete, and insert commands. For example:

BigCommerceEntities context = new BigCommerceEntities(); var customersQuery = from customers in context.Customers select customers; foreach (var result in customersQuery) { Console.WriteLine("{0} {1} ", result.Id, result.FirstName); }

See "LINQ and Entity Framework" chapter in the help documentation for example queries of the supported LINQ.

Ready to get started?

Download a free trial of the BigCommerce Data Provider to get started:

 Download Now

Learn more:

BigCommerce Icon BigCommerce ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with BigCommerce Ecommerce Software.