我有下面的代码,通过使用数据集将共享点列表保存到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>