We are proud to share our inclusion in the 2024 Gartner Magic Quadrant for Data Integration Tools. We believe this recognition reflects the differentiated business outcomes CData delivers to our customers.
Get the Report →Working with QuickBooks Online Data in LINQPad
Execute LINQ queries to QuickBooks Online data in LINQPad.
The CData ADO.NET Provider for QuickBooks Online enables you to use standard ADO.NET interfaces like LINQ and the Entity Framework to work with QuickBooks Online data. This article will demonstrate the process of establishing a connection from LINQPad and executing LINQ queries.
About QuickBooks Online Data Integration
CData provides the easiest way to access and integrate live data from QuickBooks Online. Customers use CData connectivity to:
- Realize high-performance data reads thanks to push-down query optimization for complex operations like filters and aggregations.
- Read, write, update, and delete QuickBooks Online data.
- Run reports, download attachments, and send or void invoices directly from code using SQL stored procedures.
- Connect securely using OAuth and modern cryptography, including TLS 1.2, SHA-256, and ECC.
Many users access live QuickBooks Online data from preferred analytics tools like Power BI and Excel, directly from databases with federated access, and use CData solutions to easily integrate QuickBooks Online data with automated workflows for business-to-business communications.
For more information on how customers are solving problems with CData's QuickBooks Online solutions, refer to our blog: https://www.cdata.com/blog/360-view-of-your-customers.
Getting Started
Create the Data Model
After downloading and installing both the provider and LINQPad, create a new class library project within Visual Studio.
See the help documentation for a guide to setting up an EF 6 project to use the provider.
Right-click your project and click Add -> New Item -> ADO.NET Entity Data Model. In the resulting dialog, select Code First from database. Click New Connection and specify the connection string options in the resulting wizard.
QuickBooks Online uses the OAuth authentication standard. OAuth requires the authenticating user to log in through the browser. To authenticate using OAuth, you can use the embedded OAuthClientId, OAuthClientSecret, and CallbackURL or you can obtain your own by registering an app with Intuit. Additionally, if you want to connect to sandbox data, set UseSandbox to true.
See the Getting Started chapter of the help documentation for a guide to using OAuth.
Select the desired tables and views and click Finish to create the data model.
- Build the project. The generated files can be used to create the QuickBooks Online connection in LINQPad.
Connect to QuickBooks Online Data in LINQPad
After you have obtained the required connection properties and created the data model assembly, follow the steps below to start using the data model in LINQPad.
Open LINQPad and click Add Connection.
Select the "Use a typed data context from your own assembly" option.
Select Entity Framework DbContext.
Click Browse next to the Path to Custom Assembly box and browse to your project folder. Browse to the .dll or .exe under the bin folder.
- Select the name of the DbContext.
- If you saved your connection string in App.Config, specify the path to the App.config.
You can now query QuickBooks Online data through LINQPad. For examples of the supported LINQ queries, see the "LINQ and Entity Framework" chapter in the help documentation.