Ich starte bald ein neues Projekt und untersuche, ob MVC, Silverlight oder beides verwendet werden soll oder nicht. Diese Frage Silverlight vs. ASP.NET MVC war ein guter Ausgangspunkt. Aber wenn man sich die SL3-Beta anschaut, sieht es so aus, als würden zwei Dinge die Landschaft ein wenig verändern. Erstens, die Navigationsfunktion, die eine direkte Funktion von Silverlight ist und jetzt gibt es die .NET RIA Services. Obwohl es nicht wirklich Teil von Silverlight ist, ist es ziemlich integriert und scheint die Lücke zwischen Client- und Serveroperationen zu überbrücken. Ein Bereich, in dem MVC meiner Meinung nach stark ist und Silverlight (eine Client-seitige Technologie) nicht. Ich verstehe, dass Sie immer noch beide verwenden können, aber sollten Sie und warum?
Einfach gesagt, nein.
Silverlight und Silverlight auf dem Desktop sind eher Winforms / WPF-Anwendungen, die gerade im Web laufen. Sie sind zustandsbehaftet und verhalten sich sehr unterschiedlich von einer Website. Silverlight-Apps können nur auf Computern ausgeführt werden, auf denen Silverlight ausgeführt werden kann. In einem Business-Netzwerk-Setup können Gruppenrichtlinien eingerichtet sein, so dass silverlight nicht installiert werden kann. Dann hast du ein Problem.
ASP.NET MVC ist jedoch eine zustandslose Art von Design, wo ziemlich jeder mit einem Web-Browser unabhängig von der Plattform erreichen kann. Mit Ihrer Website, die ASP.NET MVC verwendet, haben Sie viel mehr Freiheiten, da Sie nicht darauf angewiesen sind, dass der Endbenutzer eine Laufzeitumgebung installiert hat.
Ich denke, jeder hat seinen Platz und es ist ziemlich offensichtlich. Silverlight eignet sich hervorragend, um eine reichhaltige Erfahrung zu ermöglichen. Ich bezweifle, dass Sie zu viel Silverlight auftauchen sehen werden, wenn Sie Webseiten ersetzen.
Als wir .NET RIA-Dienste erstellten, haben wir versucht, Entwicklern zu ermöglichen, die schnellen RIAs zu 100% auszubauen und als Ergebnis haben wir den Ansatz in Bezug auf die Übernahme von ASP.NET WebForms usw. in Angriff genommen eine hybride Mode ist möglich, aber es ist eine Frage, welches Stück Sie für das schwere Heben übernehmen wollen.
Wenn Ihre Silverlight-Lösung in Bezug auf die Implementierung grundlegend ist - dh nur DataGrid von Daten -, dann ist ASP.NET MVC eine bessere Lösung, da Sie sich nicht um Deep-Linking etc. kümmern müssen in einem nativen HTML-basierten Ansatz).
Wenn Sie jedoch eine größere RIA-Lösung in Silverlight erstellen und ASP.NET auf spezifische Weise verwenden, ist das in Ordnung, aber Sie müssen sich daran erinnern, dass bei jeder Seitenaktualisierung eine Strafe entsteht das ist natürlich eine Seitenaktualisierung und zweitens müssen Sie sicherstellen, dass die genannte Silverlight-Instanz zurück zu dem Ort finden kann, an dem sie vor dem Refresh war (das oder lädt an einem Ort, an dem der Benutzer seinen Weg finden kann) / p>
Es kann trotz der Güte, die wir in die RIA Services einbrachten, etwas schwierig sein.
Produktmanager für Scott Barnes / Rich Platforms / Microsoft.
Ich denke, dass beide Technologien ihren Platz haben - ich denke, dass Silverlight hauptsächlich für spezielle Anwendungen verwendet wird und asp.net MVC hauptsächlich für öffentliche und allgemeine Webseiten und Webanwendungen.
Was Sie verwenden möchten, das hängt ganz von Ihren Bedürfnissen und Ihrer Zielgruppe ab.
Silverlight kommt auch für Geschäftsanwendungen (Navigation, RIA-Dienste, Datenformular usw.) gut an. Aber das große Problem ist das Plugin.
Persönlich habe ich genug von HTML, also konzentriere ich mich auf Silverlight.
Es hängt auch davon ab, ob Sie auf einer Website zum Spaß arbeiten oder nicht.
Viele Websites, die für Unternehmen und Organisationen gebaut wurden, haben ein "read-only" öffentliches Frontend. Das heißt, Informationen (Inventar, Kataloge, Unternehmensnachrichten) werden aus einer umfangreichen Datenbank dargestellt, aber der durchschnittliche Endbenutzer kann sie nicht bearbeiten.
Das natürliche Muster, das ich gesehen habe, ist die Verwendung von ASP.NET MVC für die "Frontend" -Präsentation, aber die Verwendung der Silverlight / RIA-Funktionalität, um zu vermeiden, dass alle CRUD-Dateien in das Administrations-Backend geschrieben werden müssen. Es ist eine großartige Passform. Die Administrations-Benutzerdatenbank ist in der Regel viel kleiner als die gesamte Zielgruppe, und Probleme wie Download-Zeit, Silverlight-Penetration usw. sind bei weitem nicht so problematisch.
Aber die Silverlight RIA / ASP.NET MVC Geschichte ist momentan sehr unscharf. Es gibt nicht viele Informationen darüber, wie RIA-Dienste verwendet werden, um Zugriff auf ein Projekt mit gemeinsam genutztem Repository mit dem für MVC-Projekte erstellten Stil bereitzustellen. link text Dies macht die Integration jetzt schwierig . Sie können sowohl Ihre MVC- als auch Ihre RIA-Layer auf einer gemeinsamen EF- oder Linq2Sql-Basis aufbauen, aber es ist sinnvoll, die Intelligenz des Repository zu teilen, das Sie für MVC erstellt haben.
Im Idealfall erhalten wir eine gute Dokumentation der Verbindung von RIA Services mit einer Repository-Klassenschicht, unabhängig davon, was das Repository verwendet, um mit der darunterliegenden Datenbank zu sprechen, und dann ist die schnelle Entwicklungsgeschichte abgeschlossen.
Ich denke nicht, dass silverlight die asp.net MVC Geschichte ändert.
MVC lässt asp.net mehr webstandardfreundlich sein und zwingt Projekte in eine mehr testbare, entkoppelte Struktur. Letzteres war die alleinige Verantwortung des Architekten / Entwicklers in Webforms.
"Ich persönlich habe genug von HTML, deshalb konzentriere ich mich auf Silverlight." Und so ist es. Javascript auch.
Ich entwickle seit mehr als einem Jahrzehnt Web-Apps (Classic-ASP sprang dann auf .Net, sobald es in der Betaversion war). MCTS x2 und MCPD x2 in asp.net. Während ich denke, ASP.Net MVC ist eine großartige Ergänzung für Website-Entwickler, glaube ich, dass Webformulare mit einem strengen MVP-Muster in der UI-Ebene ist oft noch besser für Unternehmen / B2B-Webanwendungen. (Dashboard, Verwaltung, Reporting usw.)
Das alles sagte, wenn ich mich mehr in den Integrationsraum, SOA, BizTalk, WCF etc. bewege. Ich bin wirklich über das Geben eines Scheitels Wetter, das diese CSS-Eigenschaft gültig in "IE-Version was auch immer" angewendet wird. oder "firefox version whats next" und über den Umgang mit dem manchmal großen irgendwann schießen wollen, steuern Sie die Hierachie in Web-Formularen.
Silverlight 3 fängt wirklich an, für LOB-Anwendungen relevant zu werden. Ich sehe es als Hauptanbieter von Webforms, nicht MVC.
Tags und Links asp.net-mvc silverlight silverlight-3.0