MongoDB + C#-Driver: Query-Performance-Vergleich mit LINQ

Microsoft hat mit der Einführung von .NET 3.0 ein wunderbares Sprachkonstrukt geliefert, das aus der heutigen .NET Entwicklung nicht mehr wegzudenken ist und das andere Sprachen beneiden: LINQ. LINQ steht für Language Integrated Query und ermöglicht die Selektion von Daten ähnlich des SQL-Syntaxtes; nur eben im Quellcode. Mittlerweile gibt es...

ORM-Wahl fürs Web: Entity Framework+MSSQL oder MongoDB?

Seit Microsoft mit ASP.NET MVC Version 4 das Entity Framework in der Version 5 mitliefert verbreitet es sich auf dem Markt der Objekt-Relationalen-Mappern (ORM) rasend schnell. Ich möchte einen kleinen Blick auf die beiden am höchsten verbreiteten OR-Mapper in der ASP.NET MVC-Welt geben und hierbei auf die Hauptmerkmale eingehen; einige...

ASP.NET MVC: Integration eines SSL-Zertifikats

Welche Änderungen muss ich in der Anwendung umsetzen? Prinzipiell müssen keine Änderungen an der Anwendung gemacht werden - es ist jedoch zumindest für den Login sinnvoll, dass der Controller oder zumindest die Action des Logins das Attribut RequireHttps erhält. Dies stellt sicher, dass eine HTTPS-Verbindung zum Client hergestellt und somit...

ASP.NET MVC - Deaktivieren des Browser-Caches

Kleines Snippet, welches verhindert, dass der Browser des Client die Seite aus dem Cache entnimmt: public class NoCacheAttribute : ActionFilterAttribute { public override void OnResultExecuting( ResultExecutingContext filterContext ) {        if (filterContext.IsChildAction) return; // Prüfen, ob dies nur ein Child-Element ist! filterContext.HttpContext.Response.Cache.SetExpires( DateTime.UtcNow.AddDays(-1) ); filterContext.HttpContext.Response.Cache.SetValidUntilExpires( false); filterContext.HttpContext.Response.Cache.SetRevalidation( HttpCacheRevalidation.AllCaches ); filterContext.HttpContext.Response.Cache.SetCacheability( HttpCacheability.NoCache...

C# Warteschlangen – Die BlockingCollection

Oft werden Warteschlangen benötigt, um Aufgaben zu Verwalten oder durch etwaige Parallelität die Performance zu Steigern. Mit .NET 4.0 hat Microsoft einen großen Schritt in diese Richtung getan und den Entwicklern durch die sogenannten ConcurrentCollections viel Arbeit abgenommen. Die für diesen Beitrag interessante Klasse ist die BlockingCollection, die den sogenannten Producer...

MongoDB - Umgang mit DateTime-Strukturen

Wie bei jeder Datenhaltung sollten Zeitangaben immer in einem einheitlichen, Zeitzonen-unabhängigen Format abgelegt werden. Leider ist dem nicht immer der Fall, sodass die Mehrheit von uns bestimmt schon mal in die Situation kamen, dass die Zeitwerte nachweiselich einfach nicht stimmen können, da man dieses nicht beachtet hat. Der saubere Weg...

MongoDB Installation

MongoDB wird parallel und zuverlässig für mehrere Plattformen weiterentwickelt. Aktuell sind dies OSX/Solaris in 64Bit und Windows/Linux in 32/64Bit. Ebenso stehen die C++ Sourcen zum Download bereit. Im Gegensatz zu einer MSSQL-Installation wird keine 2000MB große Installationsdatei benötigt, sondern es reicht der Download der aktuellen MongoDB-Version mit rund 60 MB...