您可以使用HTTP調試器(如fiddler2)來分析SharePoint設計器進行查找的Web服務和遠程過程調用。例如,爲了獲得可用的列表模板,SPD使用DisplayPostRPC命令(例如,http://www.microsoft.com/technet/prodtechnol/default.mspx)發出HTTP請求。
POST http://[server]/[web]/_vti_bin/owssvr.dll?Cmd=DisplayPost
用的XML有效載荷:
<?xml version="1.0" encoding="UTF-8"?>
<ows:Batch OnError="Return" Version="12.0.0.000">
<Method ID="0,GetProjSchema">
<SetVar Name="Cmd">GetProjSchema</SetVar>
</Method>
</ows:Batch>
SPD然後分析在響應中的ListTemplates節點,以獲得模板名稱,類型和功能ID的列表。
要創建從一個特定的模板類型或特徵ID的列表中,SPD使用相同DisplayPost命令,此時用類似於消息體:
<?xml version="1.0" encoding="UTF-8"?>
<ows:Batch OnError="Return" Version="12.0.0.000">
<Method ID="0,NewList">
<SetVar Name="Cmd">NewList</SetVar>
<SetVar Name="ListTemplate">108</SetVar>
<SetVar Name="Title">Discussion Board</SetVar>
<SetVar Name="FeatureId">00bfea716a4943fab535d15c05500108</SetVar>
<SetVar Name="RootFolder" />
<SetVar Name="LangID">1033</SetVar>
</Method>
</ows:Batch>
有關如何使用RPC協議的示例請參閱this將文件上傳到SharePoint文檔庫(它使用author.dll而不是owssvr.dll,但技術類似)。
提琴手是一個很好的建議,它有助於確定我得到的真實問題。 – 2010-11-08 23:17:26