2017-07-31 88 views
0

每當我點擊部分視圖的鏈接(我希望它在與'ng-view'標記的div內的同一頁面上顯示),部分視圖在新頁面中打開。Angularjs路由不能與ASP.NET MVC一起工作

這是我的索引頁面(其呈現的內部佈局頁面)。

<div ng-app="ProductsModule"> 
 
    <div> 
 
     <div> 
 
      <a href="addproductpartial" target="_self"> Add Product </a> 
 
     </div>  
 
    <div> 
 
     <div ng-view></div> 
 
    </div> 
 
</div>

這裏是我的angularjs路由腳本

angular.module("ProductsModule", ['ngRoute', 'ngAnimate', 'ui.bootstrap']) 
 
    .config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) { 
 
    $routeProvider.when('/addproductpartial', 
 
     { 
 
      templateUrl: 'Home/AddProductPartial', 
 
      controller: 'AddProductsController' 
 
      }); 
 

 
    $locationProvider.html5Mode({ 
 
     enabled: true, 
 
     requireBase: false 
 
    }); 
 
}]);

和MVC控制器

public class HomeController : Controller 
{ 
    // GET: Home 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    public ActionResult AddProductPartial() 
    { 
     return PartialView("AddProductPartial"); 
    } 
} 

編輯1

它的工作,但只爲MVC控制器名稱。例如, .when('/ Home'... works,但.when('/ Home/Index'...或.when('/ Index'... ...不時)

回答

0

更改鏈接:

<a href="#!addproductpartial" target="_self"> Add Product </a> 

(添加 '#!' 在 'HREF' 的開頭)