Избегайте кэширования частичных представлений angularJS в IE

Я работаю над приложением ASP.NET MVC, в котором также есть angularJS. У меня есть главная страница, на которой есть разные вкладки, и когда вы нажимаете на них, они загружают угловое частичное представление. Вот так выглядит главная страница:

{ ... }     
<div class="widget-div" ng-controller="mainController"> 
    <div class="widget-body">
        <div class="tabs-left">
            <ul id="demo-pill-nav" class="nav nav-tabs tabs-left" style="width: 160px">
                <li ng-class="getMenuClass('/search')">
                    <a href="javascript:void(0);" ng-click="selectPage('search')">Search</a>
                </li>
                <li ng-class="getMenuClass('/addressVerification')">
                    <a href="javascript:void(0);" ng-click="selectPage('addressVerification')">Address Verification</a>
                </li>
                <li ng-class="getMenuClass('/dashboard')">
                    <a href="javascript:void(0);" ng-click="selectPage('dashboard')">Dashboard</a>
                </li>
                <li ng-class="getMenuClass('/editProfile')">
                    <a href="javascript:void(0);" ng-click="selectPage('editProfile')">Update Profile</a>
                </li>               
            </ul>
            <div class="tab-content">
                <div class="active tab-pane">
                    <ng:view />
                </div>
            </div>
        </div>
    </div>  
</div>
{ ... } 

В главном контроллере метод selectPage выглядит следующим образом:

$scope.selectPage = function (page) {
    //not relevant code removed here
    $location.path("/" + page);
};

И конечно я определил маршруты как:

$routeProvider.when("/search", {
    templateUrl: "/Scripts/app/views/search.html"
});

Теперь мне нужны эти частичные представления, чтобы они не кэшировались, по крайней мере, в процессе разработки. Для этого я использовал предоставленный методВот:

myApp.run(function($rootScope, $templateCache) {
   $rootScope.$on('$viewContentLoaded', function() {
      $templateCache.removeAll();
   });
});

Это отлично работало, за исключением Internet Explorer, который всегда будет загружать кэшированную версию даже при нажатии Ctrl + F5.

Кроме того, я попытался установить заголовки HTTP в HTML-макете, например так:

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />

Но это не сработало.

Поэтому мой вопрос: есть ли способ избежать такого поведения?

Ответы на вопрос(2)

Ваш ответ на вопрос