DOWNLOAD 7.2018

DOWNLOADS Excel-Dateien schreiben Zwei Bibliotheken, um Excel-Dateien zu erzeugen. Im Schwerpunkt: jede Menge CMS auf Basis von .NET.

as wäre die Welt ohne Excel. Die Tabellenkalkulation $$ NETworkManager W wird nicht nur verwendet, um Berechnungen in tabel- larischer Form auszuführen. Nein, es muss auch für Textta- bellen, Layoutversuche und die Datenanalyse herhalten. Selbst als Build-Tool für den Zusammenbau von Programmen wird die Tabellenkalkulation missbraucht. Kaum verwunderlich, dass bei diesem breiten Spektrum an Einsatzmöglichkeiten der Wunsch groß ist, Excel-Dateien aus einem Programm heraus zu erzeugen. Mit .NET-Bibliotheken wie ClosedXML oder EPPlus ist das kein Problem. Mit weni- gen Zeilen Code füllen Sie Zellen und speichern das Work­ sheet in einer .xlsx-Datei. Bei ClosedXML sieht das so aus: public MClosedXML() { Manchmal geht alles schief und der Client findet den Host var workbook = new XLWorkbook(); nicht. In so einem Fall kann der NETworkManager helfen. Das var worksheet = Tool fungiert beispielsweise als IP-Scanner oder als Port-Scan- workbook.Worksheets.Add("Sample Sheet"); ner. Es lassen sich also damit offene Ports einer bestimmten worksheet.Cell("A1").Value = "Hello dotnetpro World!"; IP-Adresse finden. Außerdem ermittelt das Programm Infor- worksheet.Cell("B1").Value = 42; mationen über das Netzwerk-Interface. worksheet.Columns().AdjustToContents(); workbook.SaveAs("closedxml.xlsx"); } Und bei EPPlus so:

public MEPPlus() { $$ Content-Management-Systeme using (var package = new ExcelPackage()) { ExcelWorksheet worksheet = Diese Ausgabe der dotnetpro ist getränkt mit Content-Manage- package.Workbook.Worksheets.Add("Inventory"); ment-Systemen (CMS). Im Schwerpunkt des Hefts geht es eher worksheet.Cells[1, 1].Value = um die kleinen CMS, die sich eben mal für ein Projekt aufsetzen "Hello dotnetpro World!"; lassen. Der Schwer- worksheet.Cells[1, 2].Value = 42; punkt des Downloads FileInfo xlFile = new FileInfo("epplus.xlsx"); beschäftigt sich hin- package.SaveAs(xlFile); gegen mit den großen, } gut ausgestatteten } CMS. Die Liste besteht hier zu einem großen In einer Stichprobe zeigte sich, dass EPPlus etwa doppelt so Teil aus Systemen auf schnell wie ClosedXML war. Allerdings kann das bei ande- Basis von .NET oder ren Worksheet-Inhalten auch anders aussehen. Beide Bib­ sogar dem modularen liotheken lassen sich mit NuGet über den Befehl Install-Pa- .NET Core. ckage ClosedXML beziehungsweise Install-Package EPPLus installieren. ◾

50 7.2018 www.dotnetpro.de DOWNLOAD 7.2018

$$ Schwerpunkt $$ Aktuelle Downloads

Orchard CMS Awesome .NET Core Orchard ist ein kostenloses Open-Source-CMS, das auf der Eine Sammlung von .NET-Core-Libraries, -Tools, -Frameworks ASP.NET-MVC-Plattform basiert. sowie -Software.

Hive IT ReactiveUI Hive IT ist ein Content-Management-System, das als Backend Ein erweitertes, zusammensetzbares, funktionelles reaktives für eine imaginäre Reparaturfirma mobiler Geräte funktioniert. Model-View-ViewModel-Framework für alle .NET-Plattfor- Hive IT wurde erstellt in ASP.NET Core 2.0 und C# unter Ver- men, das auf reaktiver Programmierung basiert. wendung von Visual Studio 2017. NETworkManager Hood Ein leistungsstarkes Tool zum Verwalten von Netzwerken und Das Hood CMS ist ein komplettes Content-Management-­ zum Lösen von Netzwerkproblemen. System und damit ein solider Backbone für jede Website. OpenAPI.NET mojoPortal Das OpenAPI.NET SDK enthält ein Objektmodell für OpenAPI- mojoPortal ist ein erweiterbares, datenbankübergreifendes, Dokumente in .NET zusammen mit gängigen Serialisierungs- Mobile-freundliches Web-Content-Management-System programmen zum Herausfiltern von OpenAPI-JSON- sowie ­sowie Webanwendungs-Framework geschrieben in C# und YAML-Rohdokumenten aus dem Modell. ASP.NET. .NET Command Line Interface Dieses Repo enthält den Quellcode für die plattformübergrei- Umbraco ist ein voll ausgestattetes Open-Source-Content- fenden .NET-Core-Befehlszeilen-Tools. Management-System. Es ist vor allem wegen seiner Flexibilität beliebt. Verwenden Sie Umbraco kostenlos. Templates ASP.NET Templates bieten Projekt-Templates, die in .NET Core Tent zum Erstellen von ASP.NET-Core-Anwendungen verwendet Tent ist ein kleines Content-Management-System. Es ist „just werden können. Dieses Projekt ist Teil von ASP.NET Core und for fun“ entstanden und in einem frühen Stadium. Ziel ist es, beinhaltet Samples, Dokumentation sowie Startanleitungen für auf schnelle Weise einen neuen Contenttyp erstellen zu kön- ASP.NET Core. nen mit Datenzugang sowie Screens für Editoren. ASP.NET Core MVC Kaliko CMS ASP.NET Core MVC bietet eine leistungsstarke, Pattern-basier- Kaliko CMS ist ein Open-Source-Content-Management-­ te Möglichkeit zum Erstellen dynamischer Webseiten. System für die ASP.NET-Plattform und unterstützt sowohl ASP.NET MVC als auch traditionelle WebForms. Noda Time Noda Time ist ein alternatives Datums- und Zeit-API für .NET. RazorEngineCms Ein Content-Management System erstellt auf Basis der Razor Sparky-Test-Helpers Engine. Dieses Projekt gehört nicht zur Razor Engine, verwen- .NET Unit Test Helper Libraries. Quellcode unter anderem für det sie aber zum Kompilieren von Templates. SparkyTestHelpers, SparkyTestHelpers.AppSettings und Spar- kyTestHelpers.AutoMapper. DNN Platform DNN Platform ist ein freies Open-Source-.NET-CMS und das Avalonia Fundament der DNN-Evoq-Produktangebote. Über 750000 Avalonia ist ein WPF-inspiriertes, plattformübergreifendes, Organisationen weltweit haben mit DNN Platform bereits Web- XAML-basiertes UI-Framework und bietet ein flexibles Styling- seiten erstellt. System. Außerdem unterstützt es eine Vielzahl von Betriebs- systemen: Windows (.NET Framework, .NET Core), Linux (GTK), SpoonCMS Mac OS, Android sowie iOS. Ein leichtes CMS in .NET Core für Seiteninhalte. Harmony HiPCMS Eine Library zum Patchen, Ersetzen sowie Dekorieren von .NET- HiP-CmsWebApi ist ein Content-Management-System, um das und Mono-Methoden während der Laufzeit. Harmony bietet System „History in Paderborn“ mit Daten zu füllen. eine Möglichkeit, Funktionalität in Applikationen zu ändern.

www.dotnetpro.de 7.2018 51