2010-05-14 43 views
0

我有一個SharePoint 2007 MOSS實例,我正在進行實況調查。有多個開發人員,開發多個Web部件並進行部署(使用VS2005/2008 SharePoint擴展)。以編程方式判斷已部署的Web部件是否是本機自帶的MOSS或自定義開發的部件?

我想也許我可以看看我的網站中的「Web部件庫」列表中的字段,並查看「修改者」,但它看起來像是一個開發人員的名字是在某些out-of-the -box webparts以某種方式,並且我知道的是自定義開發的,他們說「系統帳戶」 - 所以在這個列表中查看該字段是不行的。

我想那麼也許我可以看看每個webpart被分配到的「Group」,但看起來他們被任意地分配給了許多不同的組,不一致 - 所以使用這些信息是不行的。

這是我的代碼,我只是循環瀏覽並獲取所有webparts的名稱。是否有任何屬性可以訪問列表項目的webparts,它會告訴我它是否是一個自定義開發的webpart?任何方式來區分自定義的webparts和開箱即用的?有沒有另一種方法來做到這一點?

 #region Misc Site Collection Methods 
     public static List<string> GetAllWebParts(string connectedSPInstanceUrl) 
     { 
      List<string> lstWebParts = new List<string>(); 

      try 
      { 
       using (SPSite site = new SPSite(connectedSPInstanceUrl)) 
       { 
        using (SPWeb web = site.OpenWeb()) 
        { 
         SPList list = web.Lists["Web Part Gallery"]; 
         foreach (SPListItem item in list.Items) 
         { 
          lstWebParts.Add(item.Name); 
         } 
        } 
       } 
      } 
      catch (Exception ex) 
      { 
       lstWebParts.Add("Error"); 
       lstWebParts.Add("Message: " + ex.Message); 
       lstWebParts.Add("Inner Exception: " + ex.InnerException.ToString()); 
       lstWebParts.Add("Stack Trace: " + ex.StackTrace); 
      } 

      return lstWebParts; 
     } 
     #endregion 
+0

有一個函數Ge​​tAllWebParts返回的異常字符串列表有點......我沒有適當的名稱。 而你可以使用ex.ToString()來返回所有的信息。 – 2010-05-15 09:06:47

回答

1

您是否試過導出webparts?點擊網頁部分右上角的箭頭,然後點擊導出。它將作爲XML文件導出。查找元數據標籤。例如:

<metaData> 
    <type name="Microsoft.SharePoint.Portal.WebControls.KPIListWebPart, Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" /> 
    <importErrorMessage /> 
</metaData> 

type屬性將爲您提供程序集信息。如果它是一個自定義的webpart,程序集名稱應該主要是微軟以外的東西.SharePoint

+0

如果它像高度自定義的數據表單Web部件那麼怎麼辦? – zincorp 2010-05-14 16:07:02

+0

你可以'定製'一個內置的webpart,但這不是一個'自定義'的webpart,我相信這是OP試圖找出什麼.. – desigeek 2010-05-14 16:25:30

+0

也許作爲一個起點 - 有誰知道有多少開箱即用的webparts與MOSS 2007的企業版一起提供?那麼至少我知道有X個原始webparts,並且看到我已經安裝了Y,並且說有(x-y)= z,Z是可能有多少個自定義webparts。 – program247365 2010-05-14 17:38:36

相關問題