2017-02-21 4 views
0

Ich arbeite am Tracking-System für meinen SignalR Hub-Zweck. Dafür habe ich Klasse, wo ich URL speichern möchte, die aktuelle Seite darstellt, wo Benutzer ist, dann seine letzte Anfrage, da ich ausgelagerte Liste für meine Datentabellen verwende und ich muss genau wissen, auf welcher Seite Benutzer und natürlich Benutzer-ID ist.URL der aktuellen Seite in C# mit AngularJS erhalten

Das ist meine Klasse, wo ich Informationen

public class UserTracking 
{ 
    public string URL { get; set; } 
    public string LastRequest { get; set; } 
    public string UserId { get; set; } 
} 

speichern möchten Da ich eine einzelne Seite Anwendung habe ich habe Probleme mit auf der Webseite Benutzer Positionsnachverfolgungsmodul wegen Winkelführung, sondern auch für Ansichten Anzeigen Ich habe Armaturenbrett-Controller mit ActionResults Methoden wie diese, mich zu erlauben unter

public ActionResult ProjectTask() 
{ 
    return View(); 
} 

public ActionResult Project() 
{ 
    return View(); 
} 

Meine Frage .cshtml Seiten mit Winkeln Routing, etwas anzuzeigen ist, wenn ich irgendwie bin in der Lage URL der Benutzerposition auf meiner Website zu bekommen. Zum Beispiel, wenn Benutzer auf http://localhost:2969/Dashboard#/tasks/ ist, möchte ich diese /Dashboard#/tasks bekommen. Vielleicht kann ich einige Informationen von meinen ActionResults bekommen, aber ich habe keine Ahnung wie.

Antwort

0

Es ist schwer zu wissen, ob dies mit den von Ihnen bereitgestellten Informationen funktioniert, aber Folgendes könnte funktionieren.

Wenn Sie die spezifischen Routen kennen, die ein Benutzer navigieren muss, um Sie MVC Controller zu erreichen, dann könnten Sie diese Informationen als ein Modell übergeben, wenn Sie die Ansicht zurückgeben. Angenommen, ich habe eine MVC-Route, die eine Razor-Seite zurückgeben soll, auf der alle Objekte aus meiner Liste mit dem Namen "Freddys Geburtstag" angezeigt werden. Die URL in diesem Fall würde in etwa so aussehen:

localhost/list/Freddy's%20Birthday 

eine Route passend:

[Route("~/list/{id}")] 

zu informieren Angular von dem, was Sie zu tun haben, übergeben Sie einfach in den Informationen als Modell:

Sie können auf dieses Modell in Ihrem cshtml mit @Model zugreifen. Wenn die ID übergeben wurde „Freddys Geburtstag“ wie vor:

<div todo-list-item-directive>@Model</div> 

von ASP zurückkehren würde:

<div todo-list-item-directive>Freddy's Birthday</div> 

Auf diese Weise funktioniert, und man konnte einige Ansicht Modelle bauen in Ihre Razor Seiten verweisen wenn Sie kompliziertere Informationen eingeben müssen. Wenn es Ihnen jedoch möglich ist, lohnt es sich wahrscheinlich, den ui-Router einzurichten und Angular für Ihr View-Routing und ASP.NET für Ihre API zu verwenden.

Verwandte Themen