Heim >Backend-Entwicklung >C#.Net-Tutorial >Ausführliche Erläuterung des Prozesses zum Suchen von Aktionen im MyMVC-Feld

Ausführliche Erläuterung des Prozesses zum Suchen von Aktionen im MyMVC-Feld

Y2J
Y2JOriginal
2017-05-17 11:30:311896Durchsuche

Zuerst müssen wir die HttpHandlerFactory von MyMVC in web.config registrieren, was den Zugang zum gesamten Framework darstellt.
Im ASP.NET-Pipeline-Prozess wird die GetHandler()-Methode aufgerufen und endlich kann mein Code ausgeführt werden!
Die erste vom Framework ausgeführte Codezeile lautet:

// 根据请求路径,定位到要执行的ActionControllerActionPair pair = UrlParser.ParseAjaxUrl(virtualPath);
public sealed class ControllerActionPair{    public string Controller;    public string Action;}
静态方法UrlParser.ParseAjaxUrl()就是专门用来解析URL并返回ControllerActionPair的:

Der Code ist eigentlich der reguläre Ausdruck, der Controller und extrahiert Aktion von der URL. Der Name hängt alles davon ab.
Was die Verwendung regulärer Ausdrücke betrifft, halte ich dies für eine grundlegende Fähigkeit und werde hier übersprungen.

Schauen wir uns den zweiten Aufruf von AjaxHandlerFactory an:

// 获取内部表示的调用信息InvokeInfo vkInfo = ReflectionHelper.GetAjaxInvokeInfo(pair);

Die ReflectionHelper-Klasse ist eine interne Toolklasse, die speziell für die Reflexionsverarbeitung verwendet wird. Der relevante Code für den AjaxAction-Suchprozess lautet wie folgt ( Beachten Sie den Code Annotation) in Alle AjaxController werden geladen.
2. Die GetAjaxController-Methode wird verwendet, um die Typbeschreibung eines Controllers basierend auf seinem Namen zurückzugeben.

3. Die GetAjaxAction-Methode wird verwendet, um die Beschreibungsinformationen der Aktion basierend auf dem Controller-Typ und dem Namen der aufzurufenden Aktion zurückzugeben.

4. Die GetAjaxInvokeInfo-Methode wird verwendet, um die von der AjaxHandlerFactory erhaltene ControllerActionPair-Beschreibung in spezifischere Beschreibungsinformationen umzuwandeln.
Im Code verwendet der Aktionssuchprozess den verzögerten Lademodus. Um die Sammlung von Aktionsbeschreibungsinformationen zu speichern, verwende ich Threadsafe
Hashtable

[Verwandte Empfehlungen]

1. Besondere Empfehlung

:

Version „php Programmer Toolbox“ V0.1 herunterladen

2 kostenloses Video-Tutorial3. .NET MVC-Beispiel

4 des Prozesses der Aktionsausführung im NET MyMVC-Framework

5 Tutorial zum Zuweisen von Werten zu Methoden im .NET MyMVC-Framework

6. Tutorial zur Verarbeitung von Rückgabewerten im .NET MyMVC-Framework

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des Prozesses zum Suchen von Aktionen im MyMVC-Feld. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn