ScottGu und ScottHa haben es verkündet und es gab großen Beifall in der Community: Der ASP.NET Webstack ist Open Source! Der Blogpost “ASP.NET MVC, Web API, Razor and Open Source and what it means” von Jimmy Bogard ist auch lesenswert!
ASP.NET MVC, Razor, Web Pages und die Web API sind Open Source
Besagte Frameworks liegen auf Codeplex in einem Git Repository mit Apache 2.0 Lizenz. Anders als bei der Offenlegung des .NET Frameworks akzeptiert das Web Team ausdrücklich Code von “Nicht”-Microsoft Entwicklern.
Ändert das nun irgendwas?
Alle Frameworks werden weiterhin von Microsoft supportet und haben entsprechende Teams dahinter. Für 99.9% der jetzigen ASP.NET Entwickler ändert sich mit der Offenlegung als Open Source nichts, aber für die restlichen 0.1% gibt es nun die Chance Bugs oder Features evtl. selber zu patchen und Microsoft zu schicken. Natürlich ist es auch für die Transparenz sehr hilfreich, wenn man sieht woran gearbeitet wird. Man kann die Änderungen welche zuletzt von den Entwicklern eingecheckt wurden hier sehen.
Was ist mit ASP.NET WebForms?
ASP.NET WebForms schlummert in der System.Web.dll und hat einige Abhängigkeiten zu Komponenten, welche noch nicht in diesem offenen Modell bearbeitet werden können.
Erste Schritte:
Um den Source Code sich runterzuholen benötigt man Git. Auf der Codeplex Seite sind einige Clients für Windows empfohlen (wie man mit Git anfängt hab ich auch mal geschrieben) Danach einfach ein
git clone https://git01.codeplex.com/aspnetwebstack.git
und schon hat man die Sourcen samt Tests:
Als erstes muss man dann per CMD diesen Befehl im root Verzeichnis der Sourcen ausführen:
build RestorePackages build
Dies lädt einige NuGet Packages runter und baut die Solution.
Um die Tests auszuführen benötigt man noch ein kleines Tool “SkipStrongNames”, damit man gegen die signierten Assemblies testen kann.
Die Solution im Visual Studio:
Aktuell gibt es wohl aber noch Probleme beim Bauen wenn man die .NET 4.5 Preview samt MVC4 installiert hat. Auch einige Tests laufen bei mir nicht. In den Diskussionforen auf Codeplex findet man einige solcher Sachen.
In diesem Sinne: Wer Bugs findet… der macht ein Unit-Test und schickt ein Pull Request! ;)