Сценарий SharePoint не работает при запуске в качестве команды после развертывания Visual Studio

Я написал сценарий, который вставляет некоторые тестовые данные в библиотеку документов. Я намерен использовать его в качестве этапа после развертывания в Visual Studio 2010, чтобы библиотека не была пустой после отзыва и развертывания.

Соответствующие части сценария:

Install.ps1:

$scriptDirectory = Split-Path -Path $script:MyInvocation.MyCommand.Path -Parent
. "$scriptDirectory\Include.ps1"

$webUrl = "http://localhost/the_site_name"
$web = Get-SPWeb($webUrl)
...

Include.ps1: com / Forums / en-US / sharepoint2010programming / thread / faa25866-330b-4e60-8eee-bd72dc9fa5be

Я не могу получить доступ к 64-битному API SharePoint с помощью 32-битных клиентов. Поскольку Visual Studio является 32-разрядной версией, действие после развертывания будет выполняться в 32-разрядном процессе и завершится ошибкой. Однако существует 64-разрядная версия MSBuild. Если мы позволим ему запустить сценарий PowerShell, все будет в порядке.

Оберните сценарий в файл MSBuild, например:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Install" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Target Name="Install">
    <Exec Command="powershell .\Install" />
  </Target>
</Project>

Затем установите для командной строки после развертывания значение:

%WinDir%\Microsoft.NET\Framework64\v4.0.30319\MSBuild $(SolutionDir)\ProjectFiles\TestData\Install.msbuild
7
задан Tor Hovland 15 October 2010 в 06:47
поделиться