Bearbeiten: Im Folgenden wird der Pfad zur Baugruppe mit dem Controller und der Typname der Klasse mit der Controlleraktion angegeben. Vielleicht gibt dir eine Kombination von diesen das, wonach du suchst, Aaron?
string assemblyPath = Assembly.GetExecutingAssembly().CodeBase;
string typeName = this.GetType().FullName;
Sie liefern zum Beispiel so etwas wie
file:///C:/Projects/TestApp/TestApp.UI/bin/TestApp.UI.DLL
TestApp.UI.Controllers.TestController
Sofern Sie den Controller in den ‚Standard‘ ASP.NET MVC Wege platzieren und benennen, eine bestimmte Kombination der oben könnten Sie geben der richtige vollständige Pfad zur C# Datei:
C:/Projects/TestApp/TestApp.UI/Controllers/TestController.cs
oder den relativen Pfad:
Controllers/TestController.cs
Im Folgenden wird die Route zum Controller-Aktion geben:
1) string path = Request.Url.AbsolutePath
2) string appPath = Request.ApplicationPath;
string absPath = Request.Url.AbsolutePath;
string path = appPath.Length <= 1 ?
absPath : absPath.Replace(appPath, "");
Beispiel für den Antrag auf eine Index Aktion der Testcontroller (http://localhost:50027/Test/Index): Die oben genannten Erträge
1) /Test/Index
2) /Test/Index
Für eine Website mit Basis-URL bei http://localhost:50027/blog, Beispiel für die Anforderung einer TestController-Index-Aktion (http://localhost:50027/blog/Test/Index): Das obige gibt
zurück
1) /blog/Test/Index
2) /Test/Index
Sie sollten solche URLs nicht manuell erstellen ... setzen Sie es über Routing mit RouteTable.Routes, wenn Sie müssen. –