Dependency Injection mit Ninject und ASP.NET MVC 3

In den letzten Tagen habe ich mich mal etwas näher mit der neuen Auskopplung des MVC Frameworks (ASP.NET MVC 3) beschäftigt. Nicht nur die Viewengine Razor ist hinzugefkommen, es hat sich auch einiges unter der Haube getan. Mich interessiert aktuell die vereinfachte Einbindung von Dependency Injection (IoC). Als DI-Container verwende ich Ninject und bin bisher auch sehr zufrieden damit.
Weiterlesen »

Paging für beliebige Elemente in MVC

Auf der Suche nach einer einfachen und eleganten Lösung für Paging in MVC bin ich auf das Blog von Martijn Boland gestoßen. Er hat eine kleine Assembly mit den erforderlichen Klassen und Extensions geschrieben. Enthalten ist eine angepasste List mit Metainformation für das Paging und eine Extension zum Rendern des Pagers. Dieser kann mittels CSS weiter angepasst werden. Da der Quellcode frei verfügbar ist, kann man die Quellen weiter nach eigenen Wünschen verfeinern.
Ich nutze eine angepasste Version in meinen Projekten und bin sehr zufrieden. Als Alternative kann man sich das MVC Contrib Projekt auf Codeplex mal anschauen. Hier hat mich aber der Pager nicht überzeugt. Die Darstellung ist nicht so, wie ich sie mir vorstelle. Da es aber ein Opensource-Projekt ist, wird da bestimmt noch was kommen.

Einen wichtigen Bereich unterstützt die Assembly aber nicht, das Sortieren und Filtern. Dazu habe ich aber eine weitere Extension, die ich demnächst hier veröffentlichen werde.

Ratingindicator für ASP.Net MVC

Will man eine Bewertung in einer Webseite anzeigen lassen, so bietet sich eine visuelle Darstellung mit sprechenden Icons an. Dies sieht man auch auf jeder größeren Seite, angefangen bei Amazon.de, welche die Rezensionen grafisch darstellen über sämtliche Filmbewertungsseiten (www.imdb.com, http://www.filmstarts.de) und schließlich IT-Seiten wie http://www.zdnet.de

Ich habe dafür eine Extension geschrieben, welche einen Ratingindicator aus zwei unterschiedlichen Icons erstellt. Anhand des übergebenen Maximums und des Wertes der Bewertung werden dann die Icons erstellt.
Weiterlesen »

Game of Life – Extended Edition

Vor einiger Zeit habe ich in einer Vorlesung eine Aufgabe zu Conway’s Game of Life lösen müssen.
Das Spiel kennt wohl fast jeder, der mal einen Kurs in Informatik belegt hat. Es geht um die Darstellung von zellulären Automaten und ist bis heute noch sehr populär.
Bei der ursprünglichen Idee wird eine Kopie der Welt mit den aktuellen Zuständen der Lebewesen als Basis zur Berechnung der folgenden Generation verwendet. In meiner Implementierung ist dies ein wenig anders. Ich habe die Lebewesen als einzelne Thread implementiert. Jedes Lebewesen prüft die Nachbarn in seiner Umgebung zu einem (fast) beliebigen Zustand und berechnet daraus, ob es weiterlebt, stirbt oder wiedergeboren wird.
In der aktuellen Version ist auch die originale Spielart abgebildet. Außerdem habe ich ein paar Vorlagen eingebunden. Du kannst auch eigene Vorlagen anlegen und speichern. Diese werden in einer XML-Datei abgelegt. Hinweis: Bei mehrfädiger Ausführung solltest du das Spielfeld nicht größer als 30×30 machen. Das dauert schon lang genug. Die Performance der Anwendung war bis jetzt noch kein Kernkriterium der Applikation.
Ich habe den Quellcode mal beigelegt.

Umzug abgeschlossen

Alles neu macht das neue Jahr. So oder so ähnlich könnte man den Start des Jahres für Csharp-Paradise betiteln. Ich bin mit meiner Seite auf einen neuen Webserver umgezogen. Dieser bietet nun mehr Platz und auch mehr Möglichkeiten. Da ich hierbei auch gleich das CMS auf WordPress umgestellt habe, muss natürlich noch der ganze Inhalt erstellt werden. In den kommenden Tagen und Woche werde ich hoffentlich die Zeit hierzu finden.
Die folgenden Posts werden sich aber auf jeden Fall um das Thema ASP.Net MVC 2 und deren Erweiterungen drehen.