So che questo errore è apparso per le persone prima, ma questo sembra essere un po 'un caso speciale."Nessun percorso nella tabella di percorso corrisponde ai valori forniti" quando si utilizza Aree
Ho lavorato alla creazione di una SPA con ReactJS su ASP.NET MVC 4. Non ho avuto problemi a far funzionare le cose sulla mia macchina. Tuttavia, il problema strano che sto vedendo è che non funziona su altre macchine per altri sviluppatori. Per quanto ho visto, non ho alcun file che non è controllato sotto il controllo del codice sorgente. Ho fatto uso del RouteDebugger e vedo il percorso corretto catturato.
L'itinerario che sto utilizzando per questa SPA è/V2/Home. Quindi ho un'area chiamata "V2", un controller MVC nell'area chiamata "HomeController" e ha una vista chiamata "Indice". Ho configurato un catchall nella V2AreaRegistration.
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"V2_default",
"V2/{*url}",
new { area = "V2", controller = "Home", action = "Index" }
);
}
Ecco Application_Start in Global.asax.cs
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterAuth();
AutoMapperConfiguration.Configure();
Logger.Info("Application started");
GlobalConfiguration.Configuration.EnsureInitialized();
}
ho ottenuto assolutamente nulla con questo. Mi piacerebbe averlo risolto. Sentiti libero di chiedere qualcosa che manca.
Hai un HomeController nel tuo sito principale pure? In tal caso, sarà necessario specificare lo spazio dei nomi da utilizzare qui utilizzando il parametro namespace di MapRoute, altrimenti MVC non saprà quale "HomeController" utilizzare. O quello, o cambia il nome in V2HomeController o qualcosa del genere. –
Esegui un checkout pulito in un'altra cartella sul tuo computer e prova a eseguire il sito, o usa qualcosa come WinMerge per confrontare le directory. –
@TiesonT. L'ho fatto e funziona ancora perfettamente sulla mia macchina – SnareHanger