データセットを使用して共有ポイント リストを xml に保存する以下のコードがあります。コードの下に、出力が xml 形式で表示されます。
助けてほしいことがいくつかあります。
- データセットを使用して、データをデータ型とともに xml に保存するにはどうすればよいですか?
例: 取得したい結果またはこのような結果。xml ファイルを読み取ったときに、正しいデータ型に変換し直すことができます。
<NewDataSet>
<Report_x0020_List>
<Title **Type="Text"**>My title</Title>
<RequesterID **Type="Number"**>1</RequesterID>
<AdditionalRemarks **Type="Note"**>Additional Remarks </AdditionalRemarks>
<DeliveryDate **Type="DateTime"**>2012-07-13T00:00:00+02:00</DeliveryDate>
...... and so on
</Report_x0020_List>
</NewDataSet>
2) 現在、xml ファイルのルートはNewDataSet
. xml として保存する前にこれを操作する方法はありますか? 要素の命名方法を制御したいと思います。
-----望ましい結果--------
<MyReportList>
<Report>
</Report>
</MyReportlist>
----こんなものじゃない-----
<NewDataSet>
</NewDataSet>
3) データ型を保存できない場合、データを xml 文字列から SharePoint の適切な型に変換する方法の良い例を教えてもらえますか?
私が使用しているコード
if($lists.List.Length -gt 0)
{
foreach ($list in $lists.List)
{
$listName = $list.Attributes.Item(0).Value
$myList=$spweb.Lists[$listName]
if($myList -ne $null)
{
if ($myList.Items.Count -gt 0)
{
$spQuery = New-Object Microsoft.SharePoint.SPQuery
$spQuery.Query = $query
#$myList.GetItems($spQuery).GetDataTable();
$dt = $myList.GetItems($spQuery).GetDataTable()
$ds = New-Object System.Data.DataSet
$ds.Tables.Add($dt)
$ds.WriteXml("$filePath$fileName")
}
}
}
}
私が得ている結果
<NewDataSet>
<Report_x0020_List>
<Title>My title</Title>
<RequesterID>1</RequesterID>
<AdditionalRemarks>Additional Remarks </AdditionalRemarks>
<DeliveryDate>2012-07-13T00:00:00+02:00</DeliveryDate>
<DueDate>2012-07-14T00:00:00+02:00</DueDate>
<Format>TXT</Format>
<Source>;#ASTV;#BS;#</Source>
<Frequency>Once</Frequency>
<Hold>1</Hold>
<MoreInformation>More qsd sgvfsdfsdf Information </MoreInformation>
<Owner>sp_user1;#19;#sp_user2</Owner>
</Report_x0020_List>
</NewDataSet>