ISBLicenseServer 1.6.0

dotnet add package ISBLicenseServer --version 1.6.0
NuGet\Install-Package ISBLicenseServer -Version 1.6.0
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="ISBLicenseServer" Version="1.6.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ISBLicenseServer --version 1.6.0
#r "nuget: ISBLicenseServer, 1.6.0"
#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.
// Install ISBLicenseServer as a Cake Addin
#addin nuget:?package=ISBLicenseServer&version=1.6.0

// Install ISBLicenseServer as a Cake Tool
#tool nuget:?package=ISBLicenseServer&version=1.6.0

isb.connect.nuget

Bei dem Projekt handelt es sich um ein NuGet-Paket für .NET 6 oder höher. Mit dem Projekt lassen sich Lizenzen von isb.connect überprüfen und auswerten.

Lizenzserver der ISB Solutions GmbH

Das NuGet-Paket isb.connect.nuget stellt Klassen und Methoden zur Verfügung mit denen sich Lizenzabfragen durchführen lassen und mit denen man Lizenzen auswerten kann:

  • Eine Lizenz kann schnell und einfach abgefragt und validiert werden
  • Es ist möglich eine Lizenz vom Lizenzserver zu laden und dann mit den Lizenzinformationen zu arbeiten.

Benötigt wird dazu immer die Kundennummer (companyNumber) des Kunden und der Name des Produktes (appName), zu dem man die Lizenz abrufen möchte. <br> Mit diesen Lizenzen können die Anpassungen und Programme der ISB Solutions GmbH lizensiert werden.

Installation des NuGet-Pakets

Das NuGet-Paket kann, wie jedes NuGet-Paket, über Visual Studio heruntergeladen werden. <br> Dabei gibt es 2 Möglichkeiten:

Installation über die NuGet-Paketverwaltung

  • Die NuGet-Paketverwaltung über “Projekt” im oberen Hauptmenü öffnen.
  • Unter Durchsuchen nach „ISBLicenseServer“ suchen und das Paket installieren.

Installation über die Paket Manager Konsole

  • Die Paket Manager Konsole über “Ansicht” im oberen Hauptmenü unter dem Unterpunkt „Andere Fenster“ öffnen.
  • Das NuGet-Paket mit dem folgenden Befehl installieren:
Install-Package ISBLicenseServer

Anwendung

Mit dem Produkt isb.connect kann eine Lizenz zum einen abgefragt und geprüft werden und zum anderen kann die Lizenz vom Lizenzserver geladen und eingesehen werden. So ist es dann unteranderem möglich die Lizenzinformationen weiter zu verwenden.

Lizenz Prüfen / abfragen

Um eine Lizenz schnell und einfach abzufragen und zu validieren, gibt es die statische Methode "CheckLicense". Die Methode überprüft, ob eine Lizenz mit den übergebenen Werten ("CompanyNumber“ und "AppName“) existiert und gibt im Ergebnis einen Statuscode zurück. Die Bedeutung dieses Statuscodes kann im unteren Teil der ReadMe im Teilbereich „Lizenz validieren“ nachgelesen werden.

Bedeutung der Statuscods

var result = await License<LicenseItem>.CheckLicense("CompanyNumber", "AppName")

Lizenz laden

Mit der Methode "GetLicense" kann man eine Lizenz vom Lizenzserver laden, um dann mit den Lizenzinformationen weiter arbeiten zu können. Damit man die Methode benutzen kann muss man zuerst eine Instanz der Klasse „Licence“ erstellen. Anhand der mitgegebenen Werte ("CompanyNumber" und "AppName") werden dann die Lizenzinformationen ermittelt und im Ergebnis gespeichert.

var license = new License<LicenseItem>("CompanyNumber", "AppName");
var result = await license.GetLicense();

Lizenz validieren

Hat man bereits die Lizenzinformationen zu einer Lizenz geladen kann man die Lizenz mit der Methode "ValidateLicense" überprüfen und validieren. Dazu muss man der Methode die Lizenzinformationen mitgeben. Nach Ausführung der Methode kann man die folgenden Ergebnisse bekommen: <br>

Ergebnis Bedeutung
Valid Die Lizenz ist gültig.
LicenseExpired Die Lizenz ist abgelaufen.
LicenseNotFound Die Lizenz wurde nicht gefunden.
LicenseOnlineRequired Die Zeit des Abrufes der Lizenzinformationen (Lizenz-Item) stimmt nicht mit der aktuellen Systemzeit des Abrufes überein.
LicenseServerNotReachable Der Lizenzserver konnte nicht erreicht werden.
UnhandledException Es ist ein unerwarteter Fehler aufgetreten. Wenn dieser Fehler auftreten sollte, bitte ein internes Ticket an ISB-Development schicken.
var license = new License<LicenseItem>(companyNumber, appName);
var item = await license.GetLicense();
var result = license.ValidateLicense(item);

Klasse License

Um eine Instanz dieser Klasse "License" zu erstellen, muss man die Kundennummer (companyNumber) und den Namen des Programmes (appName), zu der man die Lizenzinformationen ermitteln möchte, beim Erstellen der Instanz mitgeben. Die Serverinformationen werden dabei vom NuGet verwaltet. Bei der Erstellung einer Instanz der Klasse kann auch eine andere URL zum Lizenzserver angegeben werden, dies ist aber optional und nur bei der Nutzung von mehreren Lizenzservern notwendig. Die Klasse verfügt über die Methoden "CheckLicense" und "ValidateLicense" zum Validieren und Überprüfen von Lizenzen und die Methode "GetLicense" um die Lizenzinformationen vom Lizenzserver zu laden.

Klasse LicenseItem

Die Klasse “LicenseItem“ wird zum Zwischenspeichern der Lizenzinformationen verwendet und wird beim Erstellen einer Instanz der Klasse "License" miterstellt. Zu jeder Lizenz werden die folgenden Informationen im “LicenseItem“ gespeichert:

  • Die ID der Lizenz (handle)
  • Den Lizenzschlüssel der Lizenz (key)
  • Der Zeitpunkt des Abrufes der Lizenz (cacheTimestamp)
  • Die Gültigkeit der Lizenz (validFrom)
  • Die Laufzeit der Lizenz (ValidTo)
  • Der Name und die Kundennummer des Kunden zu dem die Lizenz gehört (company)
  • Der Name des Produkts zu dem die Lizenz gehört (app)
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows 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
1.6.0 90 3/13/2024
1.5.0 86 3/8/2024
1.4.0 108 2/22/2024
1.3.0 98 1/26/2024
1.2.0 83 1/22/2024
1.1.0 77 1/22/2024
1.0.0 204 10/19/2023