2016-05-12 15 views
2

Zur Zeit habe ich diese Ressource http://www.bugdebugzone.com/2014/06/tutorial-how-to-make-ajax-call-in.html darüber gelesen, wie man Ajax Anrufe mit Sitecore macht. Aber ich kann sehen, dass dies aus dem Ruder läuft, wenn man Routen zur Routes.config hinzufügt. Welche Alternativen gibt es, um Routen zur Config hinzuzufügen? Oder vielleicht eine Möglichkeit, sie aus einer Konfigurationsdatei einzulesen? Gibt es vielleicht einen "natürlichen" Weg für Sitecore, den Controller und die Aktion zu übernehmen?Ajax Anrufe mit Sitecore

Antwort

1

Sitecore Weg Routen zu registrieren ist das gleiche, das im Artikel beschrieben ist, aber rufen Sie nicht aus App_start Ordner. Es sollte von einem der Prozessoren in Pipeline initialisiert werden.

Als Beispiel könnten Sie Ihre öffnen /sitecore/admin/showconfig.aspx finden initialisieren Pipeline Definition und schauen auf Sitecore.Mvc.Pipelines.Loader.InitializeRoutes, Sitecore.Mvc, Sitecore.Cintel .Client.Initialization.InitializeRoutes, Sitecore.Cintel.Client oder Sitecore.Cintel.Endpoint.Plumbing.InitializeRoutes, Sitecore.Cintel Prozessoren. Tatsächlich tun sie dasselbe, das im Artikel beschrieben ist, den Sie zur Verfügung gestellt haben, Unterschied ist nur dort, wo es genannt wird.

P.S. Wie für mich Anruf von initialisieren Pipeline haben einen Vorteil: Sie können Reihenfolge der Routen Sammlung steuern.

1

Sie könnten ASP.NET Web API 2 verwenden und Attribut-Routing verwenden, mit dem Sie Ihre Klassen- und Controller-Aktion einfach mit den Routeninformationen dekorieren können, und es wird automatisch verknüpft.

Sie müssen es mit einigen zusätzlichen Code konfigurieren, für Sitecore 8:

http://kamsar.net/index.php/2014/05/using-web-api-2-attribute-routing-with-sitecore/

http://wp-bartbovendeerdtcom.azurewebsites.net/sitecore-8-webapi-v2-mvc-and-attribute-routing/