Запустите команды powershell в C # - PullRequest
11 голосов
/ 12 июня 2010
RunspaceConfiguration psConfig = RunspaceConfiguration.Create();
Runspace psRunspace = RunspaceFactory.CreateRunspace(psConfig);
psRunspace.Open();
using (Pipeline psPipeline = psRunspace.CreatePipeline())
            {

            // Define the command to be executed in this pipeline
            Command command = new Command("Add-spsolution");

            // Add a parameter to this command
            command.Parameters.Add("literalpath", @"c:\project3.wsp");

            // Add this command to the pipeline 
            psPipeline.Commands.Add(command);


                // Invoke the cmdlet
            try
            {
                Collection<PSObject> results = psPipeline.Invoke();
                Label1.Text = "hi"+results.ToString();
                // Process the results
            }
            catch (Exception exception)
            {
                Label1.Text = exception.ToString();// Process the exception here
            }

        }

Это исключение:

System.Management.Automation.CommandNotFoundException: The term 'add-spsolution' is not recognized as the name of a cmdlet, function, script file, or operable program.

Есть предложения почему?

Ответы [ 4 ]

10 голосов
/ 29 августа 2011

Сначала добавьте эту команду:

Add-PSSnapin Microsoft.SharePoint.Powershell -EA 0

8 голосов
/ 28 июня 2010

Вы должны использовать команду import-module, чтобы загрузить правильный модуль для sharepoint. Используйте get-module для поиска доступных модулей.

Чтобы сделать это программно, см. Мой пост на тему:

http://www.nivot.org/2010/05/03/PowerShell20DeveloperEssentials1InitializingARunspaceWithAModule.aspx

-Oisin

2 голосов
/ 06 апреля 2016

У меня недавно появилась эта проблема.В моем случае я не смог ни увидеть добавленное решение, ни добавить решение.Поэтому сначала я удаляю решение, используя следующую команду PowerShell:

(Get-SPSolution -Identity "YourSolution.wsp").Delete()

Затем я смог добавить свое новое решение для кода.

0 голосов
/ 09 августа 2013

Также убедитесь, что вы запускаете команду «Add-SPSolution» из веб-приложений, которая работает на IIS, а НЕ со стандартным сервером Visual Studio (при нажатии клавиши F5).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...