2012-09-26 71 views
0

我通過Sitecore Web服務即時創建項目。到目前爲止,我可以從這個函數來創建項目:通過Sitecore Web服務訪問項目字段

AddFromTemplate

而且我也試過此鏈接:http://blog.hansmelis.be/2012/05/29/sitecore-web-service-pitfalls/

但我發現很難進入的領域。到目前爲止,這裏是我的代碼:

public void CreateItemInSitecore(string getDayGuid, Oracle.DataAccess.Client.OracleDataReader reader) 
    { 
     if (getDayGuid != null) 
     { 
      var sitecoreService = new EverBankCMS.VisualSitecoreService(); 
      var addItem = sitecoreService.AddFromTemplate(getDayGuid, templateIdRTT, "Testing", database, myCred); 

      var getChildren = sitecoreService.GetChildren(getDayGuid, database, myCred); 

      for (int i = 0; i < getChildren.ChildNodes.Count; i++) 
      { 
       if (getChildren.ChildNodes[i].InnerText.ToString() == "Testing") 
       { 
        var getItem = sitecoreService.GetItemFields(getChildren.ChildNodes[i].Attributes[0].Value, "en", "1", true, database, myCred); 

        string p = getChildren.ChildNodes[i].Attributes[0].Value; 
       } 
      } 
     } 
    } 

因此,大家可以看到我創建一個項目,我想訪問字段該項目。 我以爲GetItemFields會給我一些價值,但很難找到它。任何線索?

回答

1

我的建議是不使用VSS(Visual Sitecore Service),而是專門爲您想要的事情編寫自己的服務。

這種方式通常效率更高,因爲您可以直接在服務內部完成您想要的任務,而不是對VSS進行大量調用並處理客戶端上的邏輯。

對我來說,這一直是比使用VSS更好的解決方案。

0

我假設你正在尋找什麼字段的樣子和字段ID是什麼。

您可以使用ID調用GetXml,它會返回項目及其中設置的所有版本和字段,但不會顯示未設置的字段。