Select theme:

Material 3

Connect to Microsoft LightSwitch OData servicelink

This guide demonstrates how to connect to Microsoft LightSwitch OData service, for complete database migration please visit Migrating from LightSwitch article.

Connect to datalink

Similar to Microsoft LightSwitch, Radzen can connect to various data sources including OData services V3 and V4, Microsoft SQL Server, MySQL, PostgreSQL, Oracle, Swagger or pure REST service.

image

image

In Radzen however you have ability to work not only with tables and views in case of Microsoft SQL Server but to call stored procedures for SQL Server 2012 and above.

The other major addition in Radzen is the automatic CRUD pages creation directly from your data. This feature will cut dramatically your developement time and will help you to build fully functional database administrative application in minutes. Radzen will read all database relations and will create lookups, cascading deletes, etc. automatically.

image

Of course you can skip this step, just infer the data and construct desired pages manually similar to Microsoft LightSwitch

Creating pages manuallylink

Again similar to Microsoft LightSwitch, Radzen can create set of pages for read, edit and add records for desired database table.

image

image

Unlike Microsoft LightSwitch in Radzen you have powerful visual designer to fine-tune and customize easily your page UI.

image

image

Creation of completely empty pages is also avaialable and you can later drag & drop, bind and customize desired UI. For more info please visit Delete articles in our documentation.

Consuming data from existing Microsoft LightSwitch applicationlink

Radzen can consume data and build automatically UI from your existing Microsoft LightSwitch application.

Add CORS compatibility to the Global.asax file in your LightSwitch server application.

image

protected void Application_BeginRequest(object sender, EventArgs e)
{
	var res = HttpContext.Current.Response;
	var req = HttpContext.Current.Request;
	res.AppendHeader("Access-Control-Allow-Origin", (req.Headers["Origin"] == null ? "*" : req.Headers["Origin"]));
	res.AppendHeader("Access-Control-Allow-Credentials", "true");
	res.AppendHeader("Access-Control-Allow-Headers", "Content-Type, X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, Date, X-Api-Version, X-File-Name, MaxDataServiceVersion, DataServiceVersion, If-Match, Authorization");
	res.AppendHeader("Access-Control-Allow-Methods", "POST,GET,PUT,PATCH,DELETE,OPTIONS");

	// ==== Respond to the OPTIONS verb =====
	if (req.HttpMethod == "OPTIONS")
	{
		res.StatusCode = 200;
		res.End();
	}
}
Protected Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
    Dim res = HttpContext.Current.Response
    Dim req = HttpContext.Current.Request
    res.AppendHeader("Access-Control-Allow-Origin", (If(req.Headers("Origin") Is Nothing, "*", req.Headers("Origin"))))
    res.AppendHeader("Access-Control-Allow-Credentials", "true")
    res.AppendHeader("Access-Control-Allow-Headers", "Content-Type, X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, Date, X-Api-Version, X-File-Name, MaxDataServiceVersion, DataServiceVersion, If-Match, Authorization")
    res.AppendHeader("Access-Control-Allow-Methods", "POST,GET,PUT,PATCH,DELETE,OPTIONS")

    If req.HttpMethod = "OPTIONS" Then
        res.StatusCode = 200
        res.[End]()
    End If
End Sub

Run LightSwitch application, copy the first part of the URL (http://localhost:#####/) of your running app and add LightSwitch data-source name and .svc at the end. The final service URL should be similar to http://localhost:64052/NorthwindData.svc/.

image

image

Create new OData data-source in Radzen and set this URL as REST endpoint.

image

image

image

Run Radzen app to check the result.

image

LightSwitch OData service is V3 and relationships data is limited. Radzen will unable to retrieve and build automatically lookup fields, cascading deletes, etc. You can add this information manually in Radzen application folder meta/data/[DATA-SOURCE-NAME].json file. For example Northwind Customers <-> Orders:

...
"Customer": {
  "properties": {
	"CustomerID": {
		"type": "string",
		"x-key": true,
		"x-navigation": [
			{
				"inversePropertyName": "Customer",
				"name": "Orders",
				"type": "Order"
			}
		]
	}
...
"Order": {
  "properties": {
	"CustomerID": {
		"type": "string",
		"x-foreignKey": {
			"name": "Customer",
			"parentEntityType": "Customer",
			"parentTable": "Customers",
			"principalKey": "CustomerID",
			"textProperty": "CompanyName",
			"type": "Customer"
		},
		"x-key": false
	},
  ...

For more info please visit OData article in our documentation.

LightSwitch service basic authorizationlink

LightSwitch application can be published with Forms authentication

image

and to connect to such application service you can use Basic authorization

image

Important! If your LightSwitch service is protected by Windows authentication please check Send user credentials (required for services protected by Windows authentication) during infer.

image

© 2016-2025 Radzen Ltd. All Rights Reserved.
Designed and developed with ❤️ in Radzen Blazor Studio.

Select theme:

Material 3