Angular-ASPnet - 路由失败

Angular-ASPnet - Routing Failed

身份验证后,我需要访问我的主页。 我的控制器 Angular:

$window.location.href = 'Home/Index';

并到达我的索引页面,我得到以下错误:

我不明白这个错误我的 URL 是正确的。 谢谢 更多详情:

我有一个登录页面(RouteConfig.cs) :

      name: "Default",
                url: "{controller}/{action}/{id}",
               defaults: new { controller = "Login", action = "Authentification", id = UrlParameter.Optional }

通过身份验证后,我必须转到应用程序的主页面,其中包含几页内容,主页面和登录页面是不同的模块。这是转到我的主页的脚本: 而在我的主页中,首先应该显示的是主页,根据下面的脚本:

    $routeProvider.otherwise(
                    {
                        redirectTo: '/HomePage'
                    });

我的问题是我可以看到我的主页,但看不到内容页面 HomePage”。(错误 404 加载模板失败)

但是如果我改变 RouteConfig.cs ,就可以了:

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

我的问题是从我的登录页面到我的主页的通道。 ASP 控制器一切正常

配置 $rootProvider :

var MainApp = angular.module("MainApp",
    [
        "ngRoute",
        "GlobalParamServices",
        "HomePageApp",
        "ListCollaborateurApp",
        "CollaborateurServices",
        "ShowEditCollaborateurApp",
        "AddNewCollaborateurApp",
        "ListRoleApp",
        "ShowEditRoleApp",
        "AddNewRoleApp"
    ]);

//Showing Routing
MainApp.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
    debugger;
    //Main
    $routeProvider.otherwise(
                    {
                        redirectTo: '/HomePage'
                    });
    $routeProvider.when('/HomePage',
                        {
                            templateUrl: 'Home/HomePage',
                            controller: 'HomePageController'
                        });
    //Collaborateur
    $routeProvider.when('/ListCollaborateur',
                        {
                            templateUrl: 'Collaborateur/ListCollaborateur',
                            controller: 'ListCollaborateurController'
                        });
    $routeProvider.when('/AddNewCollaborateur',
                        {
                            templateUrl: 'Collaborateur/AddNewCollaborateur',
                            controller: 'AddNewCollaborateurController'
                        });
    $routeProvider.when('/ShowEditCollaborateur',
                       {
                           templateUrl: 'Collaborateur/ShowEditCollaborateur',
                           controller: 'ShowEditCollaborateurController'
                       });

    //Role
    $routeProvider.when('/ListRole',
                   {
                       templateUrl: 'Role/ListRole',
                       controller: 'ListRoleController'
                   });
    $routeProvider.when('/AddNewRole',
                    {
                        templateUrl: 'Role/AddNewRole',
                        controller: 'AddNewRoleController'
                    });

    $routeProvider.when('/ShowEditRole',
                      {
                          templateUrl: 'Role/ShowEditRole',
                          controller: 'ShowEditRoleController'
                      });



    //$locationProvider.html5Mode(true).hashPrefix('!')
}]);

你有办法解决这个问题吗? 谢谢,

Angular 抱怨无法从服务器加载模板。您需要在主页的 HomeController 中添加操作,以便 ASP.NET MVC 到 return 视图。

public class HomeController : Controller
{
    public ActionResult HomePage()
    {
        return View();
    }
}