パッケージマネージャコンソールでpowershellを使用して、ソリューションからプロジェクトを削除するスクリプトを作成しようとしていますが、驚くほど苦労しています。パッケージマネージャコンソールからソリューションからプロジェクトを削除する
私は簡単に今、私はプロジェクトを削除したいと働くために何かを得ることができない
PM> $dte.Solution.AddFromFile("C:\Dev\Project1.csproj")
てプロジェクトを追加することができます。
は、私は、以下を含む多くのことを試してみました:
PM> $project1 = Get-Project "Project1Name"
PM> $dte.Solution.Remove($project1)
>
Cannot convert argument "0", with value: "System.__ComObject", for "Remove" to
type "EnvDTE.Project": "Cannot convert the "System.__ComObject" value of type
"System.__ComObject#{866311e6-c887-4143-9833-645f5b93f6f1}" to type
"EnvDTE.Project"."
PM> $project = Get-Interface $project1 ([EnvDTE.Project])
PM> $dte.Solution.Remove($project)
Cannot convert argument "0", with value: "System.__ComObject", for "Remove" to
type "EnvDTE.Project": "Cannot convert the "System.__ComObject" value of type
"NuGetConsole.Host.PowerShell.Implementation.PSTypeWrapper" to type
"EnvDTE.Project"."
PM> $project = [EnvDTE.Project] ($project1)
Cannot convert the "System.__ComObject" value of type
"System.__ComObject#{866311e6-c887-4143-9833-645f5b93f6f1}" to type
"EnvDTE.Project".
PM> $solution2 = Get-Interface $dte.Solution ([EnvDTE80.Solution2])
PM> $solution2.Remove($project1)
Exception calling "Remove" with "1" argument(s): "Exception calling
"InvokeMethod" with "3" argument(s): "Object must implement IConvertible.""
PM> $dte2 = Get-Interface $dte ([EnvDTE80.DTE2])
PM> $dte2.Solution.Remove($project)
Method invocation failed because [System.Object[]] doesn't contain a method
named 'Remove'.
私は他の組み合わせを試してみましたが、私は明らかに私のホイールを回転しています。私は何か提案を感謝します。
これは問題ありませんか?私にも同様の必要があります。 –