채워지지를 GetItem 반환 0 성공을 위해,하지만 $ fieldInfos 및 $ data는 $ null입니다. C# Console 응용 프로그램에서 똑같은 작업을 수행하면 정상적으로 작동하며 data.Length는 파일 길이와 같습니다.밖으로 매개 변수는 내가 PowerShell은 스크립트에서 셰어의 Copy.asmx WebService를 호출하기 위해 노력하고있어
Copy copyWS = new Copy();
copyWS.UseDefaultCredentials = true;
FieldInformation[] fieldInfos = null;
byte[] data = null;
uint result = copyWS.GetItem(fileUrl, out fieldInfos, out data);
Console.WriteLine(result);
Console.WriteLine(data.Length);
내 실수는 어디에서 왔습니까? 아니면이 오류가 PowerShell 버그입니까? 난 전체 이름 Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes.WebServiceProxy3http___moss__vti_bin_Copy_asmx.FieldInformation[]
하지만 소용을 표시 $ fieldInfos의 유형을 변경
System.UInt32 GetItem(string Url,
Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes.WebServiceProxy3http___moss__vti_bin_Copy_asmx.FieldInformation[]&, jfww_71i, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null Fields,
System.Byte[]&, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Stream)
그래서 내 매개 변수를 잘 살펴 : beefarino의 조언에 따라
나는 $ copyWS.GetItem에게 전화를 얻었다.
좋은 점을, $ copyWS.GetItem 내가 얻을 : 선택 System.UInt32를 GetItem (문자열 Url, Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes.WebServiceProxy3http ___ moss__vti_bin_Copy_asmx.FieldInformation [] &, jfww_71i, 버전 = 0.0.0.0, 문화 = 중립, PublicKeyToken = null 필드, System.Byte [] & mscorlib, 버전 = 2.0 .0.0, 문화 = 중립, PublicKeyToken = b77a5c561934e089 스트림) – Hinek
내 사용법이 맞을 것 같습니다 (제 질문 편집 참조). 다른 조언이 있습니까? – Hinek
예 - 이것은 쓰레기입니다. 변수 선언에서 형식 지정자를 제거해보십시오. 왜 내가 이것을 생각하는지 모르겠지만 PowerShell은 형식을 다룰 때 hinky가 될 수 있습니다. – beefarino