満たされていないGetItem関数が返す0の成功のために、しかし$ fieldInfosと$ dataは$ nullです。私はC#コンソールアプリケーションから同じことを行う場合、それは正常に動作し、data.Lengthは私のファイルの長さと同じです。outパラメータは、私はPowerShellのスクリプトからのSharePointのCopy.asmx Webサービスを呼び出すようにしようとしている
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のバグですか? beefarinoのアドバイスに従い
が、私は$ copyWS.GetItemと呼ばれました:
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)
だから私のパラメータは右見て、私もフルネームMicrosoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes.WebServiceProxy3http___moss__vti_bin_Copy_asmx.FieldInformation[]
が、無駄にを表示するには、$ fieldInfosの種類を変更しました。
良い点、$ copyWS.GetItemのために私が手に:可能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 =ニュートラル、PublicKeyToken = nullフィールド、System.Byte []&、mscorlib、Version = 2.0 .0.0、Culture =ニュートラル、PublicKeyToken = b77a5c561934e089ストリーム) – Hinek
私の使い方は正しいようです(私の質問の編集を参照)...他のアドバイスはありますか? – Hinek
はい - これは駄目です。変数宣言から型指定子を削除してみてください。なぜ私はこれを考えているのか分かりませんが、タイプを扱うときにはPowerShellが嫌なことがあります。 – beefarino