Webサービスに投稿する必要があるXML文書があります。以下のファイル例。PowershellはXMLとして文字列を符号化します
<Budgets>
<Budgetline LocationName="Test Location 1" LocationCode="TL1" Period="201705" Amount="1276.000000"/>
<Budgetline LocationName="Test Location 2" LocationCode="TL2" Period="201705" Amount="1530.050000"/> </Budgets>
このデータをエンコードされたXMLとしてWebサービスに投稿する必要があります。以下の例。
私はファイルを文字列として読み込み、それをXMLに変換しています。
[string]$budgetsfile = Get-Content "D:\Upload\TestData.xml" -Raw
$xmlBudgets = ConvertTo-Xml $budgetsfile -As Stream -NoTypeInformation
XMLデータをWebサービスにするために、エラーをバックスローobject要素<Object><Objects> XMLdata </Object></Objects>
、でラップされているが。
タグを使用せずにXMLとしてデータをエンコードする方法はありますか。または、単にそれらを削除するためにstring.replace()を使用する必要があります。
石鹸の封筒はこのように見える必要があります。
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://example.com/XMLSchema-instance" xmlns:xsd="http://example.com/2001/XMLSchema" xmlns:soap12="http://example.com/2003/05/soap-envelope">
<soap12:Body>
<upload xmlns="http://example.com">
<authUser>$user</authUser>
<authPass>$pass</authPass>
<xmlData><Budgets>
<Budgetline LocationName="Test Location 1" LocationCode="TL1" Period="201705" Amount="1276.000000"/>
<Budgetline LocationName="Test Location 2" LocationCode="TL2" Period="201705" Amount="1530.050000"/>
<Budgets></xmlData>
</upload>
</soap12:Body>
</soap12:Envelope>
代わりの文字列をキャスト、なぜ私は特殊文字を削除するために符号化されたデータを取得できますか$ budgetsfile –