Featured
Posted by
Sebastian Gross on Februar 26th, 2015.
Introduction Open Auth is everywhere, maybe you even read my article on how to retrieve calendar events from your google calendar using open auth. In this article i would like to show you a simple way to create an open auth login for your asp.net mvc website. Basically you can just open up visual studio and create a new asp.net mvc project and select individual user as the authentication template. Visual studio will now create a new project template for you with working examples for Google, Facebook and Microsoft open auth login. But as you’ll quickly notice this is a very complex example which is only good for authentication, so […]
Featured
Posted by
Sebastian Gross on Oktober 30th, 2014.
Introduction Calendars are fun and every big player on the market (Google, Microsoft, Yahoo, you name it) provides its own implementation of one, usually for free. And it’s even more fun to integrate those calendars into your own apps and services. Lucky for us, all major calendar providers offer pretty good support and well documented APIs for us to use in our apps. In this post you will see how easy it is to set up a simple application that uses the google calendar API to access calendar events. API Setup Whenever you want to use a third party API ,you need to register your application as a client in […]
Featured
Posted by
Sebastian Gross on März 15th, 2013.
Ich glaube schon seit Windows 98 habe ich mich gefragt, warum Microsoft dem Windows Explorer keine Tabs spendiert. Auch Apple bekommt es unter Mac OS nicht hin den Finder Tab-Fähig zu machen. Warum eigentlich nicht? Clover zeigt wie es gehen könnte. Dieses einfache kleine Tool kombiniert alle Windows Explorer Fenster unter einem Dach und lässt sich dabei so flüssig bedienen, dass es schon fast wie eine native Lösung wirkt. Auf den ersten Blick fällt sofort auf, dass hier einige Teile vom Google Chrome eingeflossen sind. So gleicht das Look and Feel der Tabs und auch deren Bedienung bis ins Detail dem von Chrome. Alles ist super Flüssig und funktioniert komplett ohne Konfiguration […]
Featured
Posted by
Sebastian Gross on Januar 29th, 2013.
Wenn ihr ASP.NET MVC ab Version 3 schon mal benutzt habt dann wird euch die Razor ViwEngine kein Fremdword mehr sein. Oft kommt man aber gar nicht drauf, dass man diese praktische Templating-Engine auch außerhalb von MVC benutzen kann. So kann man dieses Feature super gebrauchen wenn die App E-Mails versenden soll und man größere E-Mail Templates nutzen will. Das Schöne an der Razor Engine ist, dass man diese sehr einfach integrieren kann und der Code sehr verständlich und sauber bleibt. Die Installation erfolgt hier wie so oft sehr einfach über NuGet: Jetzt ist man im Grunde schon fertig und kann sofort loslegen. Starten wir mit dem Model, das die […]
Featured
Posted by
Sebastian Gross on Oktober 8th, 2012.
Dieses „Problem“ müsste eigentlich jeder kennen der schon mein eine Webseite mit mehreren Bereichen erstellt hat. Wie kann ich den Menüpunkt der aktuell angezeigten Seite hervorheben? Hier gibt es viele Ansätze. Ich hatte schon Seiten, die die CSS Klassen ins HTML hardcoden, irgendwelche anderen Schandtaten betreiben oder nicht wirklich schöne If-Abfragen um die Menüpunkte legen. Hier muss man natürlich noch bedenken, dass ein entsprechender ViewBag-Eintrag namens „activeMenu“ in jeder Action gesetzt werden muss. urgs Ich möchte diese ganze Logik nicht in den Views haben. Daher habe ich eine kleine ExtensionMethot für den HtmlHelper geschrieben. Diese Extension generiert für mich die Menülinks und prüft beim Generieren des Links ob das Ziel des […]
Featured
Posted by
Sebastian Gross on August 8th, 2012.
Sicherlich kennt ihr diese hässlichen Popups auf größeren Seiten wie Welt.de die auch eine (Bezahl-)App im Appstore haben. Diese Popups sind nicht nur unschön, sondern nerven auch extrem! In iOS6 will Apple das Ganze nun etwas verschönern und bietet den Webseiten an ein Banner über dem Seiteninhalt anzuzeigen, das die gewünschte App inklusive ein paar Informationen wie Bewertung und Hersteller enthält. Wie das aussehen kann seht ihr in dem oberen Screenshot des Safari unter iOS6. Statt einem Popup zeigt ted.com den neuen Banner an. Implementierung Wenn ihr eure Seite auch mit einer App verknüpfen wollt könnt ihr das ziemlich einfach gestalten: <meta name="apple-itunes-app" content="app-id=%APPID%, app-argument=%APPPARAMETER%"> Ihr bindet einfach den oberen […]
Featured
Posted by
Sebastian Gross on August 7th, 2012.
Nutzt ihr eigentlich Logging Systeme? Ja? Wirklich? Jaja, das hätte ich jetzt auch gesagt 😉 Wenn ihr noch kein Logging in euren Web Projekten habt solltet ihr das schleunigst nachholen, denn es ist oft einfachste und schnellste Weg genaue Informationen darüber zu erhalten was in der Applikation los war als es zu einem Fehler oder Absturz kam. Eine der einfachsten und schnellsten Möglichkeiten Logging zu implementieren ist es die fertige und sehr mächtige Library Log4Net zu nutzen. Java Entwickler werden diese als Log4J kennen und schätzen. Am schnellsten geht es wenn ihr Log4Net über NuGet installiert: Nun habt ihr schon mal die Assembly in eurem Projekt. Als nächstes müssen wir […]
Featured
Posted by
Sebastian Gross on August 6th, 2012.
Das Entity Framework Code First ist ein feine Sache wenn man keine Lust auf SQL hat und diese lästigen CRUD Funktionen für die Datenbank jemand anders machen lassen will. Besonders zu Beginn eines Projekts ist es super bequem den DropCreateDatabaseAlways-Initialisierer zu benutzen, der einem bei jeder Modeländerung eine frische und an das neue Model aktuelle Datenbank generiert. Doch irgendwann läuft die Applikation und man hat diverse Testdaten gespeichert die man nicht verlieren will, oder die App wurde nun schon installiert und ein Update steht bevor – was nun? Natürlich kann man die Datenbank nicht mehr einfach neu erstellen mit DropCreateDatabaseAlways da dann auch alle Daten verloren gehen. Man muss die Datenbank aktualisieren, […]
Featured
Posted by
Sebastian Gross on April 5th, 2012.
In dieser Reihe von Posts möchte ich Wege zum Absichern einer MVC Anwendung zeigen, die man gerne mal vergisst oder als Neueinsteiger nicht gleich auf dem Schirm hat. Teil 2: Unnötige HTTP Response-Header entfernen Wenn wir im Internet surfen werden oft Informationen über uns ohne unser Zutun bei jedem Request an den Server übertragen. Dies geschieht über die HTTP-Header. So wird z.B. die Adresse der Seite auf der wir einen Link geklickt haben in dem Referrer-Header an den Server übertragen. Aber auch die Server selbst sind in dieser Sache oft sehr gesprächig und verraten mehr über sich als wirklich nötig ist. In dem Bild sieht man (rot eingerahmt) Informationen die […]
Featured
Posted by
Sebastian Gross on April 4th, 2012.
In dieser Reihe von Posts möchte ich Wege zum Absichern einer MVC Anwendung zeigen, die man gerne mal vergisst oder als Neueinsteiger nicht gleich auf dem Schirm hat. Teil 1: Nutzen des AntiForgeryToken bei POST Requests POST Requests sind gefährlich, da diese im Normalfall dafür verwendet werden dem Server Informationen mitzuteilen. Die Informationen sollte man natürlich prüfen, auf Form und Inhalt, aber noch wichtiger ist es, zu wissen wer uns diese Daten sendet. (Cross-Site-Attacken verhindern) Wie funktioniert das? Mit dem AntiForgeryToken können wir an dieser Stelle sichergehen, dass nur Formulare am Server angenommen werden, die der Server selbst erzeugt hat. Dabei erzeugt der Server beim Generieren des Formulars einen Token und speichert […]