DataBind Linear Data to the DevExpress Data Grid

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Use the CData ADO.NET Provider for Linear with the DevExpress Windows Forms and Web controls to provide Linear data to a chart.

The CData ADO.NET Provider for Linear incorporates conventional ADO.NET data access components compatible with third-party controls. You can adhere to the standard ADO.NET data binding procedures to establish two-way access to real-time data through UI controls. This article will demonstrate the utilization of CData components for data binding with DevExpress UI Controls (Windows Forms and Web controls), specifically binding to a chart that visualizes live data.

You can authenticate to Linear with a personal API key or with OAuth 2.0. The API key is the simplest option for connecting with your own Linear account.

Authenticating with an API Key

Set the following connection properties:

  • AuthScheme: Set this to APIKey.
  • APIKey: A Linear personal API key.

To create a personal API key, log in to Linear, open Settings > Security & access > Personal API keys, select New API key, and create it. Copy the key immediately, because Linear shows it only once.

Authenticating with OAuth

OAuth requires a custom OAuth application registered in Linear (Settings > API > OAuth applications), which provides the OAuthClientId and OAuthClientSecret. Two flows are supported:

  • Authorization code: Set AuthScheme to OAuth, InitiateOAuth to GETANDREFRESH, and provide OAuthClientId, OAuthClientSecret, and the CallbackURL defined in your application (e.g., http://localhost:33333). The driver opens Linear in your browser so you can grant access.
  • Client credentials: Set AuthScheme to OAuthClient and provide OAuthClientId and OAuthClientSecret. This authenticates the application itself, with no browser interaction, and suits machine-to-machine integrations.

By default, the driver requests the read,write scopes. The driver refreshes the access token automatically when it expires.

Windows Forms Controls

The code below shows how to populate a DevExpress chart with Linear data. The LinearDataAdapter binds to the Series property of the chart control. The Diagram property of the control defines the x- and y-axes as the column names.


using (LinearConnection connection = new LinearConnection(
"AuthScheme=APIKey;APIKey=myAPIKey;")) {
  LinearDataAdapter dataAdapter = new LinearDataAdapter(
  "SELECT id, name FROM Team WHERE key = 'ENG'", connection);
  
  DataTable table = new DataTable();
  dataAdapter.Fill(table);
  DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series();
  chartControl1.Series.Add(series);
  series.DataSource = table;
  series.ValueDataMembers.AddRange(new string[] { "name" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "id";
  series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
  chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;                              
}
The complete code example and the resulting chart.

Web Controls

The code below shows how to populate a DevExpress Web control with Linear data. The LinearDataAdapter binds to the Series property of the chart; the Diagram property defines the x- and y-axes as the column names.


using DevExpress.XtraCharts;

using (LinearConnection connection = new LinearConnection(
"AuthScheme=APIKey;APIKey=myAPIKey;"))
{
  LinearDataAdapter LinearDataAdapter1 = new LinearDataAdapter("SELECT id, name FROM Team WHERE key = 'ENG'", connection);
  DataTable table = new DataTable();
  LinearDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  series.DataSource = table;
  series.ValueDataMembers.AddRange(new string[] { "name" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "id";
  series.ValueScaleType = ScaleType.Numerical;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
An ASP.NET application created with the ADO.NET Provider and the DevExpress Web Forms control. (Salesforce is shown.)

Ready to get started?

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

 Download Now

Learn more:

Linear Icon Linear ADO.NET Provider

Rapidly create and deploy powerful .NET applications that integrate with Linear data including AgentSession, Comment, Customer, Cycle, Initiative, Integration, Issue, ProjectStatus, Release, Team, User, and more!