![]() |
VOOZH | about |
Blazor is a framework for developing modern, client-side web UIs using .NET technology. Instead of coding in JavaScript, developers can use the familiar C# language and .NET libraries to build app UIs.
The CData API Driver for ADO.NET can be used with standard ADO.NET interfaces, such as LINQ and Entity Framework, to interact with live NASA data. Since Blazor supports .NET Core, developers can use CData ADO.NET Providers in Blazor apps. In this article, we will guide you to build a simple Blazor app that talks to NASA using standard SQL queries.
CData ADO.NET Providers allow users to access NASA just like they would access SQL Server, using simple SQL queries.
Install the NASA ADO.NET Data Provider from the CData website or from NuGet. Search NuGet for "NASA ADO.NET Data Provider."
👁 Install ADO.NET NASA Provider from NuGet.Start by creating a Blazor project that references the CData API Driver for ADO.NET
Most NASA API endpoints (APOD, NeoWS, DONKI, TechTransfer) require a NASA API key. Register for a free key at https://api.nasa.gov. The default DEMO_KEY provides limited access (30 requests/hour, 50 requests/day); a registered key allows 1,000 requests/hour.
The following endpoints do not require an API key and work without authentication: EONET (Earth Observatory Natural Event Tracker), EPIC (Earth Polychromatic Imaging Camera), NASA Image and Video Library, and TechPort.
After obtaining your API key, set the following connection properties:
Profile=C:\profiles\NASA.apip;AuthScheme=APIKey;APIKey=YOUR_NASA_API_KEY
Once the authentication is configured, you can connect to NASA and query data from any of the available tables such as AstronomyPictureOfDay, NearEarthObjectFeed, EonetEvents, and NasaImageLibrary.
For example: Profile=C:\profiles\NASA.apip;AuthScheme=APIKey;APIKey=YOUR_NASA_API_KEY
@page "/"
@using System.Data;
@using System.Data.CData.API;
<h1>Hello, world!</h1>
Welcome to your Data app.
<div class="row">
<div class="col-12">
@using (APIConnection connection = new APIConnection(
"Profile=C:\profiles\NASA.apip;AuthScheme=APIKey;APIKey=YOUR_NASA_API_KEY"))
{
var sql = "SELECT , FROM AstronomyPictureOfDay WHERE StartDate = '2024-01-01'";
var results = new DataTable();
APIDataAdapter dataAdapter = new APIDataAdapter(sql, connection);
dataAdapter.Fill(results);
<table class="table table-bordered">
<thead class="thead-light">
<tr>
@foreach (DataColumn item in results.Rows[0].Table.Columns)
{
<th scope="col">@item.ColumnName</th>
}
</tr>
</thead>
<tbody>
@foreach (DataRow row in results.Rows)
{
<tr>
@foreach (var column in row.ItemArray)
{
<td>@column.ToString()</td>
}
</tr>
}
</tbody>
</table>
}
</div>
</div>
At this point, you have a NASA-connected Blazor app, capable of working with live NASA data just like you would work with a SQL Server instance. Download a free, 30-day trial and start working with live NASA data in your Blazor apps today.
Connect to live data from NASA with the API Driver
Connect to NASA