답변 감사합니다.
알려 주신 부분을 참고로 테스트를 했습니다.
"Get-Command" 로는 정상적으로 리턴되는 것을 확인 했습니다.
다만, PowerShell 스크립트 파일을 로드해서 실행 하면 여전히 오류가 발생합니다.
오류는 크게 두가 입니다.
1]
ERROR : File D:\Cal-Plus1.ps1 cannot be loaded because running scripts is disabled on this system.
이 부분은 Set-ExecutionPolicy 를 설정했지만 계속 같은 오류가 발생합니다.
2]
ERROR : 외 발생: 'System.Management.Automation.PSSecurityException'(System.Management.Automation.dll)
이 부분도 csproj 속성에 <PackageReference Include="System.Management.Automation" Version="7.0.1" /> 추가해 주었으나 같은 에러가 계속 발생합니다.
조금 이해가 안되는 부분은 어느분이 만든 C# WinForm 소스로 테스트를 하면 잘 됩니다.
.Net Core하고는 차이가 있는 것 같습니다.
더 찾아봐야 할 것 같습니다.
감사합니다.
On 2020-06-08 오전 5:36:00, '레드플러스' wrote:
안녕하세요. 강의 들어주셔서 감사합니다.
우선,
제가 질문주신 부분은 경험이 없는 부분이라, 정확한 답변인지는 모르겠으나
다음 경로를 참고해 보았습니다.
https://youtu.be/lVXK9w84cIU
그런 후 제 Blazor 강의 데모 소스인 다음 링크에 적용해 보았습니다.
https://github.com/VisualAcademy/BlazorApp/blob/master/BlazorApp/Pages/Qna/PowerShellRunDemo.razor
NuGet 패키지는 다음을 설치했구요.
샘플 코드는 다음과 같습니다. 위 GitHub 소스를 참고하세요.
그리고, 실행결과는 제 머신에서는 다음과 같이 나왔습니다.
일단은 제가 실행해 본 내용은 여기까지구요.
제가 PowerShello과 .NET Core를 연동해 본 첫 번째 소스임을 강조해드리며,
이 이상의 능력은 제가 가지고 있지 않음을 추가로 말씀드립니다^^.
그럼, 참고해주세요.
감사합니다.
On 2020-06-08 오전 3:14:00, '김정곤' wrote:
안녕하세요.
토요일 C# 강의 잘 들었습니다.
저희는 주로 C# 과 ASP.Net 으로 개발을 하고 있습니다.
최근 SPA 지원문제로 Blazor를 사용 하기로 하고 여러가지 테스트를 진행 하고 있습니다.
그 중 PowerShell 파일을 테스트 중에 문제가 있어서 문의 드립니다.
간단한 PowerShell 파일 test.sp1 파일을 만들었습니다.
[ test.sp1 파일 ]
param (
[Parameter(Mandatory=$true)]$A,
[Parameter(Mandatory=$true)]$B
)
$C = ([int]$A + [int]$B)
return $C
[Blazor : Index.razor]
public void GetPowerShellTest()
{
string command = @"& ""D:\Cal-Plus.ps1"" ";
IDictionary parameters = new Dictionary<String, Int32>();
parameters.Add("A", 1);
parameters.Add("B", 5);
PowerShell ps = PowerShell.Create();
ps.AddScript(command);
ps.AddParameters(parameters);
foreach (var result in ps.Invoke())
{
Trace.WriteLine(result);
}
}
parameter 로 두개의 값을 전달하고 그 결과를 return 받으려고 합니다.
설치 한 Nuget pakage 는 Microsoft.PowerShell.Native, Microsoft.PowerShell.SDK, Microsoft.Management.Infrastructure 입니다.
값이 제대로 넘어가는 것 처럼 보이지만 실제 실행 하면 아무런 리턴 값이 없습니다.
참고가 될만 한 자료가 있을까요?