2017-10-24 4 views
0

Aus meiner Sicht hat ich einen Tag wie die folgendennicht in der Lage zu routen Aktionsmethode

<a href="@Url.Action("LaunchApp", "ClinicalDocument")" class="btn btn-dark inline" title="Request CCDA">CCDA</a> 

wenn ich die auf den Link klicken, erhalte ich den Fehler 404. Diese Aktion befindet sich in einem neuen Controller, den ich zum Projekt hinzugefügt habe.

Serverfehler in '/' Anwendung. Die Quelle kann nicht gefunden werden. Beschreibung: HTTP 404. Die gesuchte Ressource (oder eine ihrer Abhängigkeiten) wurde möglicherweise entfernt, ihr Name wurde geändert oder ist vorübergehend nicht verfügbar. Bitte überprüfen Sie die folgende URL und vergewissern Sie sich, dass sie richtig geschrieben ist.

Angeforderte URL:/ClinicalDocument/LaunchApp

Hier ist mein Controller-Code

namespace PatientPortal.Controllers 
{ 
    //[Authorize] 
    //[InitializeSimpleMembership] 
    //[SessionTimeoutFilter] 
    public class ClinicalDocumentController : Controller 
    { 
     // 
     // GET: /ClinicalDocument/ 

     public ActionResult Index() 
     { 
      return View(); 
     } 
     [HttpGet] 
     public ActionResult LaunchApp() 
     { 
      QuickLaunch model = new QuickLaunch(); 

      return Redirect(model.Url); 

     } 
    } 
} 

Hier ist meine Route.config

public class RouteConfig 
{ 
    public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      name: "Default", 
      url: "{controller}/{action}/{id}", 
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
      //defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional} 
     ); 
    } 
} 

Ich bin nicht sicher, warum seine 404 werfen Error. Alles scheint in Ordnung zu sein. Bitte helfen Sie.

Update:

ich folgend in Debug-Ausgabe in Visual Studio

Exception geworfen siehe: 'System.Web.HttpException' in System.Web.Mvc.dll Ausnahme geworfen: ‚System. Web.HttpException‘in System.Web.dll

nach i

+0

Zeigen Sie, wie Sie die Routen beim Start und Ihre Controller Abhängigkeiten bitte erstellen. –

+1

Vergewissern Sie sich außerdem, dass sich LaunchApp in ClinicalDocumentController befindet und Sie über eine LaunchApp-Ansicht verfügen. –

+0

Ich habe keine LaunchApp-Ansicht. Eigentlich möchte ich "Redirect (model.Url)" zurückgeben. Ich werde Code aktualisieren. – user3817538

Antwort

0

So war Problem der Build-Pfad auf den Link klicken. Es wurde auf ein virtuelles Verzeichnis S:/eingestellt. Nachdem ich einen neuen Controller hinzugefügt habe, habe ich den Build-Pfad in bin/geändert. Das hat das Problem behoben.

Verwandte Themen