Вы не можете «заменить» страницу .ASPX - вы можете запросить HTML-код с разных конечных точек (страницы, если хотите), и ASP.NET будет генерировать их на основе запроса.
Эта лингвистическая неточность в стороне, вам нужно, чтобы ваш клиент Угловое приложение отображало разные шаблоны на основе некоторого значения выбора. Вы можете использовать ng-include
и ссылаться на URL-адрес шаблона, который может быть сгенерирован вашей страницей .ASPX.
Итак, представьте, что вы есть простой HTML страницы, как это:
<select ng-model="selection" ng-change="changeMasterAndDetail()">
<option value="foo">foo</option>
<option value="bar">bar</option>
</select>
<div ng-include="master"></div>
<div ng-include="detail"></div>
В контроллере можно назначить шаблон Url в зависимости от выбора:
.controller("SelectionCtrl", function($scope){
$scope.selection = foo;
$scope.changeMasterAndDetail = changeMasterAndDetail;
changeMasterAndDetail();
function changeMasterAndDetail(){
if ($scope.selection === "foo"){
$scope.master = "/path/to/master/pageA.aspx";
$scope.detail = "/path/to/detail/pageA.aspx";
} else if ($scope.selection === "bar"){
$scope.master = "/path/to/master/pageB.aspx";
$scope.detail = "/path/to/detail/pageB.aspx";
}
}
});
Выглядит хорошо, я нашел способ с угловым ui-router.min.js и сменой сайтов через $ state.transitionTo. Но для меня это выглядит плохо. –
Это тоже сработает. Это зависит от того, что вы действительно пытаетесь построить, что непонятно из исходного сообщения. –
Я использую DotnetNuke и программирование в angularJS с бутстрапом. Использует ng-table, ng-tree и другие. –