SiLA2.Core 6.3.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package SiLA2.Core --version 6.3.2                
NuGet\Install-Package SiLA2.Core -Version 6.3.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="SiLA2.Core" Version="6.3.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add SiLA2.Core --version 6.3.2                
#r "nuget: SiLA2.Core, 6.3.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.
// Install SiLA2.Core as a Cake Addin
#addin nuget:?package=SiLA2.Core&version=6.3.2

// Install SiLA2.Core as a Cake Tool
#tool nuget:?package=SiLA2.Core&version=6.3.2                

Introduction

.NET 6 implementation of the SiLA2 Standard (https://sila-standard.com/) pipeline status

  • Platform-independent Long Term Service Version
  • SiLA2.Server even runs on embedded Linux Host as recommended AspNetCore-Process
  • Feature-To-Proto-Generation by XSLT
    • SiLA2 Core Features included in SiLA2.dll
    • Additional Features should be part of Feature-Implementation Assemblies (just add your features and protos in MSBuild Targets ProtoPreparation & ProtoGeneration like it is done in Assemblies TemperatureController.Features.csproj or ShakerController.Features.csproj)
  • Extensible InProcess Server Web Frontend included (based on Blazor (https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor) which supports "server push" functionality)

image

  • Optional InProcess-Database-Module (SQLite) with basic User Management which can be easily extended...for example as AnIML data storage
  • Optional Inter Process Communication Module (SiLA2.IPC.NetMQ) for Socket Communication...compatible with ZeroMQ (https://zeromq.org/)
  • Optional AnIML Module offering C# classes generated from official AnIML schemas (https://github.com/AnIML/schemas)
  • Optional Component to manage Encryption and Certifcates

If you want to see all the Modules and Components you should start SiLA2.gRPC.Temperature.Server.App and click >> https://localhost:5001 Running the Server the first time, you´ll have to add an exception to your browser once due to the self-signed certificate which was created by the Server if there´s none.

Prerequisites

Getting Started

  • Clone Repo
    • Please be sure fetching sila_base submodule by
      • checking out the Repository with git-submodules recursively
      • or check out the Repository and run following commands
        • git submodule init
        • git submodule update
  • Run gRPC-Server
    • SiLA2.gRPC.Temperature.Server.Basic.App or
    • SiLA2.gRPC.Temperature.Server.App (containing optional WebFrontend- and DatabaseModule)
      • After having started the SilaServer process you can also follow Link https://<server-hostname-or-server-ip>:13742 (in Debug-Mode https://localhost:5001) to open a SilaServer-WebFrontend
      • In the SilaServer-WebFrontend you´ll find NavigationLink "User Management"-View to use SilaServer-Database. There´s also an example of how Server-Push-Feature can be used...just click on NavigationLink "Temperature" and hit button "Change Temperature"...
  • Run SiLA2.Temperature.Service.Client.App connecting automatically to SilaServer

Build your own Project based on official Nuget-Packages

  • Created ASP.NET Core Application as SiLA2.Server Project
  • Search for & reference SiLA2.* packages found at Nuget.org in Visual Studio or https://www.nuget.org/ ...use at least SiLA2.Core...
  • Create *.sila.xml-Feature-File and include it like it was done in Example Project SiLA2.Referencing.Nuget.Features.csproj
  • Implement the features you´ve defined in your *.sila.xml-Feature-File in your Feature-Assembly
  • Reference your Feature-Assenbly in your SiLA2.Server Project
  • Create SilA2-Clients communicating with the SiLA2.Server...in this case you might want to use Nuget-Package SiLA2.Client...

Build and Test

  • Just build Solution and run as described in "# Getting Started".
  • Alternatively you could use the SiLA Universal Client (https://gitlab.com/SiLA2/universal-sila-client/sila_universal_client)...it´s still experimental and it could be possible that you have to register SiLA2 Servers manually by IP yet...
  • If you have problems building the solution you might clean your Nuget-Cache by 'rmdir -r %UserProfile%.nuget\packages*' once...

Contribute

It´s Open Source (License >> MIT)...feel free to use or contribute. For Merge-Requests contact me by E-Mail >>> CPohl@inheco.com or Stefan Koch >>> koch@equicon.de

For Open Questions

Visit https://gitlab.com/SiLA2/sila_csharp/-/issues

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 (7)

Showing the top 5 NuGet packages that depend on SiLA2.Core:

Package Downloads
SiLA2.Client

SiLA2.Client Basic Package

SiLA2.Frontend.Razor

Web Frontend Extension for SiLA2.Server Package

SiLA2.AspNetCore

AspNetCore Utilities

Inheco.SiLA2.Incubator.Server.Features

SiLA2 Server Driver including control library of INHECO Single Plate Incubator devices.

SiLA2.Communication

Dynamic Protobuf Generation for SiLA2 Properties and Commands.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
9.0.1 136 11/17/2024
9.0.0 117 11/13/2024
8.1.2 242 10/20/2024
8.1.1 403 8/31/2024
8.1.0 855 2/11/2024
8.0.0 827 11/15/2023
7.5.4 550 10/27/2023
7.5.3 788 7/19/2023
7.5.2 780 7/3/2023
7.5.1 436 6/2/2023
7.4.6 674 5/21/2023
7.4.5 470 5/7/2023
7.4.4 471 4/28/2023
7.4.3 783 3/29/2023
7.4.2 330 3/29/2023
7.4.1 356 3/29/2023
7.3.2 487 3/10/2023
7.3.1 819 1/22/2023
7.2.1 537 12/30/2022
7.1.3 417 12/29/2022
7.1.2 401 12/29/2022
7.1.1 440 12/27/2022
7.0.0 693 11/9/2022
6.4.1 828 11/7/2022
6.3.9 3,321 10/4/2022
6.3.8 624 10/4/2022
6.3.6 743 9/27/2022
6.3.5 2,127 9/6/2022
6.3.4 935 8/16/2022
6.3.3 786 8/16/2022
6.3.2 761 8/16/2022
6.3.1 793 8/12/2022
6.2.5 652 8/8/2022
6.2.3 893 8/2/2022
6.2.2 663 8/1/2022
6.2.1 656 7/31/2022
6.1.0 929 7/5/2022
6.0.12 986 6/2/2022
6.0.11 769 4/11/2022
6.0.10 537 4/8/2022
6.0.9 542 4/8/2022
6.0.8 549 3/28/2022
6.0.7 1,166 1/29/2022