Wie kann ich die ASP .Net Model View Presenter (MVP) Muster und statische Seite Methoden markiert als [WebMethod] integrieren?

StackOverflow https://stackoverflow.com/questions/141104

  •  02-07-2019
  •  | 
  •  

Frage

In einer asp.net Anwendung, würde Ich mag die Verwendung der Webclient Software Factory (WCSF) verbinden, und die damit verbundene Model View Presenter-Muster (MVP), mit Seite-Methode, dh statische Methoden auf den ASPX Ansichten mit dem [WebMethod] Attribut gekennzeichnet.

Allerdings statische Methoden auf der aspx Seite scheinen die Model-View-Presenter Muster zu durchbrechen, da eine Instanzmethode auf der Seite erforderlich ist, um den Kontext des Moderator und Controller für die Ansicht notwendig zu haben, mit sich zu reden.

Wie würden eine erweiterte asp .net MVP-Muster in WCSF unterstützt [WebMethods] auf der Seite, auch bekannt als die View?

War es hilfreich?

Lösung

Ich hatte ein ähnliches Problem vor kurzem, als ein MVP patterened Projekt zu tun und viel AJAX Integration will. Sie sind am besten aus Web-Services, die mit dem MVP-Muster entsprechen, die Sie aufrufen.

Beachten Sie, dass ein Pagemethod ist wenig mehr als ein Web-Service, gerade in der aktuellen Seite. Es hat keinen Zugriff auf Seitenebene Objekte, so dass die Vorteile von dort mit minimal sind. Ich glaube tatsächlich, sie disadvantagious sind, geben sie Entwickler (die mit dem Konzept nicht vertraut sind) die Idee, dass sie mit Seite-Level-Objekten in Wechselwirkung treten können.

Die Kehrseite der Medaille ist, was Ihr Pagemethod tut, wenn Ihre Seite Methode nicht mit dem Modell interagieren wird, um (sagt sie, es ist komplex arithmatic Berechnungen Handhabung, die in C schnellen # / VB.NET als JS) dann die Bedienung ist wirklich ein UI-Level-Betrieb und ziemlich wahrscheinlich irrelivant wenn Sie die App in eine WinForm (oder etwas anderes).

drehen waren

Beachten Sie, dass alle Interaktion mit Daten in einer UI-Ebene ist spezifisch für die UI-Implementierung. Wenn Sie eine andere Benutzeroberfläche für die Moderatoren schreiben sind dann die Chancen sind Sie unterschiedliche UI-Ebene Daten Interaktion haben werden.

Andere Tipps

Ich glaube, Sie zu nahe kommen könnten, was Sie suchen, einen ASP.Net AJAX Web Service statt statischer Seite Methoden unter Verwendung. Der Web-Service den Vorteil, nicht statisch ist, und je nachdem, wie Sie Ihre Ansichten umgesetzt werden, (ich bin nicht vertraut mit den Besonderheiten des WCSF MVP-Muster), die Sie möglicherweise den Web-Service machen könnte Ihre „Ansicht“ layer..or zumindest etwas ziemlich nah.

Ich habe etwas Ähnliches in einem Projekt getan arbeite ich an. Ich landete, um eine dünne Daten nur Klasse zu erstellen, die zu JSON vom Webdienst serialisiert bekam die Daten aus dem Modell der „Ansicht“, aber die Web-Service hatte im Wesentlichen die gleichen Methoden zu tragen, die auf als Ereignisse ausgesetzt wäre die Aussicht.

Eines der Dinge, die ich über diesen Ansatz gefallen hat, ist, dass alle Bits, einschließlich der Web-Service, sind prüfbar.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top