Downloads 16.09.2019, 00:00 Uhr

Doppelte Portion Datenbanken

Eine Sammlung an NoSQL-Datenbanken und ein Fluent-Interface für RDBMS
(Quelle: dotnetpro)
Es soll sie ja noch geben: die Entwickler, die Entity Framework oder einen ähnlichen OR-Mapper nicht verwenden können oder dürfen. Das bedeutet dann aber, dass Abfragen an eine SQL-Datenbank normalerweise über SQL-Statements in String-Form abgesetzt werden. Schön ist nicht nur anders, sondern dieser Weg wird auch weder vom Compiler überwacht noch von IntelliSense unterstützt. Da kommt eine Bibliothek wie SqlKata gerade recht. Sie ermöglicht es, SQL-Abfragen über eine Fluent-Syntax zu formulieren. Die Suche nach dem Datensatz mit id= 88 sieht so aus:
var query = new Query("Sections").Where("id", 88);
Die Query kann man sich dann als SQL-String ausgeben lassen. Die Bibliothek kann die Abfrage aber auch gleich ausführen und das Ergebnis anzeigen. In dem folgenden Beispiel sind beide Varianten enthalten:
using System;
using MySql.Data.MySqlClient;
using SqlKata;
using SqlKata.Compilers;
using SqlKata.Execution;

namespace FlowApp
{
  class Program
  {
    static void Main(string[] args)
    {
      var compiler = new MySqlCompiler();
      // Ausgabe des SQL-Strings
      var query = new Query("Sections").Where("id", 88);
      SqlResult sql = compiler.Compile(query);
      Console.WriteLine(sql);

      // direkte Abfrage an die Datenbank
      var connection = new MySqlConnection(
        "Server=localhost; Database=dotnetprodata;
        Uid=dnpUser; Pwd=*****;");
      var db = new QueryFactory(connection, compiler);
      var sections = db.Query("Sections")
        .WhereContains("name", "Front").First();
      Console.WriteLine(sections);
    }
  }
}
Die Ausgabe auf der Konsole sieht dann so aus:
{DapperRow, id = '74', name = 'Frontend',
 remark = 'WPF, ASP.NET, AJAX, WinForms',
 order = '10', color = '#00A066'}
SELECT * FROM 'Sections' WHERE 'id' = 88
Schwerpunkt
MongoDB
MongoDB ist eine universelle, dokumentenbasierte, verteilte Datenbank für Entwickler moderner Anwendungen und für die Cloud-Ära.
https://www.mongodb.com
CouchDB
Apache CouchDB bietet Ihnen Zugang zu Ihren Daten, wo Sie ihn brauchen. Das Couch Replication Protokoll ist implementiert in einer Vielzahl von Projekten und Produkten von Mobiltelefonen bis hin zu Webbrowsern.
https://github.com/apache/couchdb
NoSQL-Examples
Dies ist ein Repository mit Codebeispielen für die Verwendung von Oracle NoSQL Database.
https://github.com/oracle/nosql-examples
LiteDB
LiteDB ist eine kleine und schnelle embedded NoSQL-Datenbank.
https://github.com/mbdavid/LiteDB
NoSQL-Data-Bases
Erkunden Sie NoSQL-Basics, hauptsächlich dokumentenbasierter und grafischer NoSQL-Datenbanken.
https://github.com/YoussefEssDS/NoSQL-Data-Bases
Couchbase Lite für .NET
Couchbase Lite ist eine einfache embedded NoSQL-Datenbank mit eingebauter Synchronisierung zu größeren Backendstrukturen, wie z.B. Couchbase Server. Dies ist das Quellrepo von Couchbase Lite C#. In erster Linie unterstützt werden die Plattformen .NET Core Windows, .NET Core macOS, .NET Core CentOS, .NET Core Ubuntu, UWP, Xamarin iOS, und Xamarin Android.
https://github.com/couchbase/couchbase-lite-net
EasyLite
EasyLite ist eine embedded Open-Source-NoSQL-Datenbank basierend auf Unqlite.
https://github.com/kuaikuaikim/easyLite
KATE
JSON-basierter NoSQL Dokumentenspeicher.
https://github.com/CaesuraSoftware/KATE
SSDB
SSDB ist ein High-Performance Key-Value-Store als eine Alternative zu Redis. SSDB ist stabil, produktionsbereit und weit verbreitet unter vielen Internetfirmen einschließlich QIHU 360.
https://github.com/ideawu/ssdb
LedisDB
Ledisdb ist eine High-Performance NoSQL-Datenbank, ähnlich wie Redis, geschrieben in Go. Sie unterstützt viele Datenstrukturen einschließlich kv, list, hash, zset, set. LedisDB unterstützt mehrere verschiedene Datenbanken als Backends.
https://github.com/siddontang/ledisdb
TinyDB
TinyDB ist eine dokumentorientierte Datenbank. Sie ist in Python geschrieben und hat keine externen Abhängigkeiten. Ziel sind kleine Apps.
https://github.com/msiemens/tinydb
DensoDB
DensoDB ist eine NoSQL-Dokumenten-Datenbank. Geschrieben für eine .NET-Umgebung in C#. Sie ist einfach, schnell und verlässlich.
https://github.com/teamdev/DensoDB
RavenDBv
Dieses Repository enthält Quellcode für die RavenDB Dokumenten-Datenbank. Mit einer RavenDB-Datenbank können Sie eine NoSQL-Daten-Architektur aufbauen oder einen NoSQL-Layer zu Ihrer aktuellen relationalen Datenbank hinzufügen.
https://github.com/ravendb/ravendb
Tidis
Tidis ist eine verteilte NoSQL-Datenbank und bietet ein Redis-Protokoll-API, geschrieben in Go.
https://github.com/yongman/tidis
NosDB
NosDB ist eine native .NET-Open-Source-NoSQL-Datenbank. NosDB ist extrem schnell sowie linear skalierbar und erlaubt Ihren .NET-Anwendungen, mit hoher Auslastung durch Transaktionen (XTP) umzugehen. Außerdem beschleunigt NosDB auch Ihre .NET-Entwicklung durch ein flexibles JSON-Schema.
https://github.com/Alachisoft/NosDB
YesSql
YesSql ist eine .NET-Core-Dokumentendatenbankschnittstelle. Sie nutzt zum Speichern ein beliebiges RDBMS.
https://github.com/sebastienros/yessql
Aktuelle Downloads
Net-Core-DocX-HTML-To-PDF-Converter
.NET Core Library zum Erstellen von angepassten Reports basierend auf Word-docx- oder HTML-Dokumenten sowie zum Konvertieren in PDF.
https://github.com/smartinmedia/Net-Core-DocX-HTML-To-PDF-Converter
Kinvey
Kinvey ist eine serverlose Anwendungsentwicklungsplattform und bietet Entwicklern Tools zum Erstellen robuster Multi-channel-Applikationen unter Zuhilfenahme eines Cloud Backends und Front-end SDKs.
https://github.com/Kinvey/dotnet-sdk
MonoDevelop
MonoDevelop ist eine integrierte Entwicklungsumgebung (IDE) für Mono unter Verwendung von Gtk#. Der MonoDevelop-Kern ist auch die Grundlage von Visual Studio für Mac.
https://github.com/mono/monodevelop
FirebaseCoreSDK
FirebaseCoreSDK ist eine .NET Core Library zum Interagieren mit der Firebase-Datenbank, Cloud Messaging und Storage. Die Library sollte in serverseitigen Apps verwendet werden.
https://github.com/shoaibshakeel381/FirebaseCoreSDK
Dyalect
Dyalect ist eine dynamische Programmiersprache für die .NET Core Plattform. Sie ist klein, schnell und modern. Dyalect (oder abgekürzt Dy) ist in C# geschrieben und hat außer zu Standard-.NET- Core-Bibliotheken keine Abhängigkeiten. Das bedeutet, dass sie auf Windows, MacOS und Linux laufen kann.
https://github.com/vorov2/dyalect
AWS Extensions für .NET CLI
Diese Repository enthält AWS-Toolerweiterungen zum .NET CLI. Die Tools helfen dabei, .NET Core- sowie ASP.NET-Core-Anwendungen auf AWS-Diensten bereitzustellen.
https://github.com/aws/aws-extensions-for-dotnet-cli
.NET Performance
Dieses Repository enthält Benchmarks, die zum Performance-Testing aller .NET Runtimes verwendet werden: .NET Core, Full .NET Framework, Mono und CoreRT.
https://github.com/dotnet/performance
DotNetHelper.ObjectToSql
DotNetHelper.ObjectToSql nimmt generischen und dynamische Typen oder anonyme Objekte entgegen und konvertiert sie in SQL.
https://github.com/TheMofaDe/DotNetHelper.ObjectToSql
Simple File Logger
Ein sehr einfaches Datei-Logging-Framework basierend auf dem NuGet-Paket Microsoft.Extensions.Logging.Abstractions. SimpleFileLogger schreibt Protokolleinträge in eine Datei. Sie können MaxFileSizeBytes und MaxArchiveFileCount spezifizieren, um z.B. die Logdateigröße, die Loghistorie oder den Speicherplatzverbrauch zu verwalten.
https://github.com/hyprsoftcorp/HyprsoftLoggingCore
.NET Toolset
Diese Repo vereint die Toolingkomponenten des .NET Core SDK (CLI Verbs, MSbuild, Compilers, etc.)
https://github.com/dotnet/toolset
Netcore-Template-Application
Die Anwendung wurde entwickelt in .NET Core und dient als Template für neue Projekte, um Nacharbeit zu vermeiden.
https://github.com/sathoril/netcore-template-application
MySqlConnector
Async MySQL Connector für .NET und .NET Core.
https://github.com/mysql-net/MySqlConnector
nBuildKit
nBuildKit bietet eine Sammlung von Tools und Skripts, mit deren Hilfe man auf einfache Weise einen kompletten Aufbau und die Bereitstellung eines Projekts einstellen kann.
https://github.com/nbuildkit/nBuildKit.MsBuild
Bot Framework SDK v4 für .NET
Im Bot Framework SDK für die .NET Repository finden Sie die Libraries und Packages, mit deren Hilfe Entwickler komplexe Bot-Anwendungen unter Verwendung von .NET erstellen können.
https://github.com/microsoft/botbuilder-dotnet
AspNetCore-Tooling
Dieses Repo enthält Tools für die Bearbeitung von ASP.NET Core Apps unter Verwendung von .NET Core Command Line und Visual Studio.
https://github.com/aspnet/AspNetCore-Tooling
ApprovalTests
Capturing Human Intelligence - ApprovalTests ist eine open-source Assertion/Verifizierungs-Library zur Unterstützung bei Unit Testing. Sie ist kompatibel mit den meisten .Net Unit Testing Frameworks (Nunit, MsTest, xUnit, MBUnit)
https://github.com/approvals/ApprovalTests.Net
NetStalker
Mit diesem Netzwerktool kontrollieren Sie die Bandbreite Ihres lokalen Netzwerks. Es kann aber auch den Internetzugang von jedem ausgewählten Gerät blockieren oder seine Geschwindigkeit unter Verwendung von Paketumleitung begrenzen.
https://github.com/hmz777/NetStalker
DNT (DotNetTools)
Befehlszeilentools zum Verwalten von .NET Core, Standard und SDK-Style Projekten und Lösungen
https://github.com/RicoSuter/DNT
OData .NET Libraries
Das OData-.NET-Projekt enthält die Implementierung der Kernfunktionalitäten des OData-Protokolls auf der .NET-Plattform, unter anderem mit URI-Parsing, Lesen und Schreiben von Request und Response, Erstellen von Entity Data Model (EDM) sowie einen .NET OData Client.
https://github.com/OData/odata.net
Dokumente
Artikel als PDF herunterladen


Das könnte Sie auch interessieren