Skyline.DataMiner.SDM.Registration.GQI 2.1.2

Prefix Reserved
dotnet add package Skyline.DataMiner.SDM.Registration.GQI --version 2.1.2
                    
NuGet\Install-Package Skyline.DataMiner.SDM.Registration.GQI -Version 2.1.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Skyline.DataMiner.SDM.Registration.GQI" Version="2.1.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Skyline.DataMiner.SDM.Registration.GQI" Version="2.1.2" />
                    
Directory.Packages.props
<PackageReference Include="Skyline.DataMiner.SDM.Registration.GQI" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Skyline.DataMiner.SDM.Registration.GQI --version 2.1.2
                    
#r "nuget: Skyline.DataMiner.SDM.Registration.GQI, 2.1.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Skyline.DataMiner.SDM.Registration.GQI@2.1.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Skyline.DataMiner.SDM.Registration.GQI&version=2.1.2
                    
Install as a Cake Addin
#tool nuget:?package=Skyline.DataMiner.SDM.Registration.GQI&version=2.1.2
                    
Install as a Cake Tool

Skyline.DataMiner.SDM.Registration.GQI

Extension methods for DataMiner GQI (Generic Query Interface) data sources to access the SDM Registration API. This package enables custom GQI data sources to query and display solution and model registrations in dashboards and low-code apps.

Features

  • 🔍 Solution Registration - Register and track solution installations with version information
  • 📊 Model Management - Register data models with API endpoints and visualization links
  • Validation - Built-in validation middleware to ensure data integrity
  • 🔄 Synchronization - Automatic synchronization between models and solutions
  • 💾 DOM Integration - Seamless integration with DataMiner Object Model (DOM) storage
  • 🎯 Type-Safe Queries - Strongly-typed repository pattern for efficient data access

Installation

Install via NuGet Package Manager:

Install-Package Skyline.DataMiner.SDM.Registration.GQI

Or via .NET CLI:

dotnet add package Skyline.DataMiner.SDM.Registration.GQI

Quick Start

Using in a GQI Data Source

using Skyline.DataMiner.Analytics.GenericInterface;
using Skyline.DataMiner.SDM.Registration;

[GQIMetaData(Name = "Solution Registry")]
public class SolutionRegistryDataSource : IGQIDataSource, IGQIOnInit
{
    private SdmRegistrar _registrar;

    public OnInitOutputArgs OnInit(OnInitInputArgs args)
    {
        // Get the SDM registrar from GQI context
        _registrar = args.GetSdmRegistrar();
        return new OnInitOutputArgs();
    }

    public GQIColumn[] GetColumns()
    {
        return new[]
        {
            new GQIStringColumn("Solution ID"),
            new GQIStringColumn("Display Name"),
            new GQIStringColumn("Version"),
            new GQIStringColumn("API Endpoint")
        };
    }

    public GQIPage GetNextPage(GetNextPageInputArgs args)
    {
        var solutions = _registrar.Solutions.Read(new TRUEFilterElement<SolutionRegistration>());
        var rows = new List<GQIRow>();

        foreach (var solution in solutions)
        {
            var cells = new[]
            {
                new GQICell { Value = solution.ID },
                new GQICell { Value = solution.DisplayName },
                new GQICell { Value = solution.Version },
                new GQICell { Value = solution.DefaultApiEndpoint }
            };

            rows.Add(new GQIRow(cells));
        }

        return new GQIPage(rows.ToArray()) { HasNextPage = false };
    }
}

Model Registry Data Source

using Skyline.DataMiner.Analytics.GenericInterface;
using Skyline.DataMiner.SDM.Registration;

[GQIMetaData(Name = "Model Registry")]
public class ModelRegistryDataSource : IGQIDataSource, IGQIOnInit
{
    private SdmRegistrar _registrar;

    public OnInitOutputArgs OnInit(OnInitInputArgs args)
    {
        _registrar = args.GetSdmRegistrar();
        return new OnInitOutputArgs();
    }

    public GQIColumn[] GetColumns()
    {
        return new[]
        {
            new GQIStringColumn("Model Name"),
            new GQIStringColumn("Display Name"),
            new GQIStringColumn("Solution"),
            new GQIStringColumn("Version"),
            new GQIStringColumn("API Endpoint")
        };
    }

    public GQIPage GetNextPage(GetNextPageInputArgs args)
    {
        var models = _registrar.Models.Read(new TRUEFilterElement<ModelRegistration>());
        var rows = new List<GQIRow>();

        foreach (var model in models)
        {
            var cells = new[]
            {
                new GQICell { Value = model.Name },
                new GQICell { Value = model.DisplayName },
                new GQICell { Value = model.Solution?.DisplayName ?? "N/A" },
                new GQICell { Value = model.Version },
                new GQICell { Value = model.ApiEndpoint }
            };

            rows.Add(new GQIRow(cells));
        }

        return new GQIPage(rows.ToArray()) { HasNextPage = false };
    }
}

About DataMiner

DataMiner is a transformational platform that provides vendor-independent control and monitoring of devices and services. Out of the box and by design, it addresses key challenges such as security, complexity, multi-cloud, and much more. It has a pronounced open architecture and powerful capabilities enabling users to evolve easily and continuously.

The foundation of DataMiner is its powerful and versatile data acquisition and control layer. With DataMiner, there are no restrictions to what data users can access. Data sources may reside on premises, in the cloud, or in a hybrid setup.

A unique catalog of 7000+ connectors already exists. In addition, you can leverage DataMiner Development Packages to build your own connectors (also known as "protocols" or "drivers").

Note See also: About DataMiner.

About Skyline Communications

At Skyline Communications, we deal in world-class solutions that are deployed by leading companies around the globe. Check out our proven track record and see how we make our customers' lives easier by empowering them to take their operations to the next level.

Product Compatible and additional computed target framework versions.
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.1.2 102 8/7/2026
2.1.1 123 7/9/2026
2.1.0 118 6/30/2026
2.0.5 124 3/16/2026
2.0.4 113 3/16/2026
2.0.3 116 3/16/2026
2.0.2 111 3/16/2026
2.0.1 113 3/16/2026
2.0.0 118 3/16/2026