![]() |
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 ADO.NET Provider for Sage 300 can be used with standard ADO.NET interfaces, such as LINQ and Entity Framework, to interact with live Sage 300 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 Sage 300 using standard SQL queries.
CData ADO.NET Providers allow users to access Sage 300 just like they would access SQL Server, using simple SQL queries.
Install the Sage 300 ADO.NET Data Provider from the CData website or from NuGet. Search NuGet for "Sage 300 ADO.NET Data Provider."
๐ Install ADO.NET Sage 300 Provider from NuGet.Start by creating a Blazor project that references the CData ADO.NET Provider for Sage 300
Sage 300 requires some initial setup in order to communicate over the Sage 300 Web API.
Authenticate to Sage 300 using Basic authentication.
You must provide values for the following properties to successfully authenticate to Sage 300. Note that the provider reuses the session opened by Sage 300 using cookies. This means that your credentials are used only on the first request to open the session. After that, cookies returned from Sage 300 are used for authentication.
For example: User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;
@page "/"
@using System.Data;
@using System.Data.CData.Sage300;
<h1>Hello, world!</h1>
Welcome to your Data app.
<div class="row">
<div class="col-12">
@using (Sage300Connection connection = new Sage300Connection(
"User=SAMPLE;Password=password;URL=http://127.0.0.1/Sage300WebApi/v1/-/;Company=SAMINC;"))
{
var sql = "SELECT InvoiceUniquifier, ApprovedLimit FROM OEInvoices WHERE AllowPartialShipments = 'Yes'";
var results = new DataTable();
Sage300DataAdapter dataAdapter = new Sage300DataAdapter(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 Sage 300-connected Blazor app, capable of working with live Sage 300 data just like you would work with a SQL Server instance. Download a free, 30-day trial and start working with live Sage 300 data in your Blazor apps today.
Download a free trial of the Sage 300 Data Provider to get started:
Download NowLearn more:
๐ Sage 300 IconRapidly create and deploy powerful .NET applications that integrate with Sage 300.