Ready to get started?

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

 Download Now

Learn more:

Pinterest Icon Pinterest ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with Pinterest.

LINQ to Pinterest 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 Pinterest Data Provider.

This article illustrates using LINQ to access tables within the Pinterest via the CData ADO.NET Data Provider for Pinterest. 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 Pinterest Data Source".
  4. Enter your data source connection information.

    Pinterest authentication is based on the standard OAuth flow. To authenticate, you must initially create an app via the Pinterest developer platform where you can obtain an OAuthClientId, OAuthClientSecret, and CallbackURL.

    Set InitiateOAuth to GETANDREFRESH and set OAuthClientId, OAuthClientSecret, and CallbackURL based on the property values for the app you created.

    See the Help documentation for other OAuth authentication flows.

    Below is a typical connection string:

    OAuthClientId=YourClientId;OAuthClientSecret=YourClientSecret;CallbackURL='https://localhost:33333'InitiateOAuth=GETANDREFRESH
  5. If saving your entity connection to App.Config, set an entity name. In this example we are setting PinterestEntities 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 commands. For example:

PinterestEntities context = new PinterestEntities(); var usersQuery = from users in context.Users select users; foreach (var result in usersQuery) { Console.WriteLine("{0} {1} ", result.Id, result.Id); }

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