Ich bin neu bei AngularJS und möchte es für unser neues Projekt verwenden, das auf ASPNET MVC basiert. Ich möchte AngularJS die Ansichten verwalten (es wird Hybrid-SPA sein, einige Seiten normale MVC generierte Ansichten). Aber ich bin in der Lage zu entscheiden, was ich am Serverende wählen soll. d. h. ServiceStack / WebApi / MVC-Aktionen? Es gibt Beispiele im Web für WebAPI und reguläres ASPNET MVC, aber konnten keine SS + Angular Beispiele finden. Könnten Sie mir ein Beispielprojekt mit SS + Angular geben (wie man Routing verwaltet, verhindert, dass die Ansichten (HTML-Dateien) direkt vom Benutzer geöffnet werden usw.).
Vor ein paar Monaten habe ich ein Demo-Projekt zusammengestellt ( Ссылка ) für das Chicago Code Camp 2013. Die Beispiel-Site auf AppHarbor scheint down zu sein (Ich habe die AppHarbor-Site in Betrieb genommen, aber alle meine Produktionskonfigurationen befinden sich im GitHub Repo. Ich kann nie die Einstellungen zwischen GitHub und ihnen), aber ich denke, der Code ähnelt, was Sie verlangen. Es verwendet AngularJS (wahrscheinlich nicht das beste Beispiel dafür), .NET MVC mit ServiceStack unter / api. Es verwendet auch Twitter BootStrap, Redis Pub / Sub und SignalR ... wahrscheinlich zu viel Zeug in dieses Projekt / Beispiel zerschlagen. Wenn Sie Redis installieren können ( Ссылка ) und ändern Sie redisUrl
in localhost:6379
in der Datei web.config Sie sollten es lokal ausführen können.
Ich verwende ServiceStack + ASP.NET MVC + Angular in meinem Projekt.
Sobald ServiceStack installiert ist (ziemlich einfach mit Nugget-Paket), rufen Sie ServiceStack Rest WS sehr einfach mit eckigen in einem Dienst auf:
%Vor%In ServiceStack I Verwenden Sie DTO und ViewModel wie folgt:
%Vor%Und um meinen Dienst zu beenden:
%Vor%Was das Routing angeht, benutze ich in meinem Fall die ASP.NET MVC Route, weil ich mich damit wohler fühle. Also habe ich einen BaseController erstellt, der ServiceStack User an jede View sendet:
%Vor%Weiter, wenn Sie ein ViewModel direkt an einen eckigen Controller übergeben müssen, können Sie dies tun:
%Vor%Beispiel für die Methode init () im Winkelregler:
%Vor%Ich habe alle meine Beispiele vereinfacht, um es einfach zu verstehen, aber wenn Sie weitere Erläuterungen benötigen, lassen Sie es mich wissen
Das SocialBootstrap-Projekt enthält eine ordentliche Full-Stack-Konfiguration, es verwendet backbone.js & amp; underscore.js ist jedoch nicht eckig - es kann helfen, es zu lesen.
Obwohl in diesem Beispiel die Service-Schicht eng mit dem Front-End verbunden ist, da beide im selben Projekt enthalten sind. Dies ist etwas, was ich für ein größeres SPA versuchen würde.
Ich mache ein SS + AngularJs + SignalR und ich kann Ihnen sagen, dass ich es nicht bereue, persönlich fühle ich mich sehr geradlinig das Framework zielt nur auf die Verwendung der Plugins und Ihres IoC (in meinem Fall Ich benutze SimpleInjector).
Ich recherchiert eckig und SS separat, da REST-Aufrufe in angular kann BackEnd agnostic sein, aber Sie müssen noch herausfinden, Dinge wie Sicherheit zwischen dem Front-End und dem Back-End, Routing, etc integrieren
Sie können eine kleine Demo bei razorrockstarts finden verwendet SS + angularJs können Sie einen Blick auf diese Post werfen und dies auch andere .
Ich hoffe, das hilft
Tags und Links angularjs c# asp.net-mvc-4 servicestack