Настройка политики выполнения для RemoteSigned или Unrestricted должна работать. Он должен быть изменен в режиме администратора с помощью консоли PowerShell. Имейте в виду, что изменения будут применяться в соответствии с битовой версией консоли PowerShell, поэтому 32 бит или 64 бит. Поэтому, если вы хотите установить пакет в Visual Studio (32-разрядная версия), для которого требуется определенная политика, вы должны изменить настройки политики через PowerShell (x86).
Команда в PowerShell (с правами администратора) установите политику в неограниченную (как отмечено в комментариях @Gabriel в комментариях):
start-job { Set-ExecutionPolicy Unrestricted } -RunAs32 | wait-job | Receive-Job
Установив политику неограниченно, вам нужно будет вернуть политику в исходное состояние после завершения установки .
RouteData также имеет конструктор , который не принимает аргументов . Просто создайте его и добавьте нужные ему значения. Нет необходимости издеваться над ним, когда вы можете его создать.
var routeData = new RouteData();
routeData.Values.Add( "key1", "value1" );
var controllerContext = new ControllerContext(httpContextMock.Object, routeData, controllerMock.Object);
Я очень новичок в TDD в сочетании с макетными объектами, но урок, который я узнал на ранней стадии от коллеги, заключался не в том, чтобы издеваться над типами, которыми вы не владеете. Таким образом, не пытайтесь издеваться над RouteData. Идея изначально была задумана Джо Уолнсом (хотя я не могу найти, где он это сказал).