天天看點

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  衆所周知,SharePoint App是2013版本的一大特色,那麼,關于App的分發有幾種方式呢?SharePoint給我們提供了兩種方式,一種是上載到SharePoint應用商店,另一種是在本地SharePoint環境中建立應用程式目錄,為本地使用者提供App的分發。

  SharePoint伺服器場中可以有多個應用程式目錄,每個目錄針對伺服器場中的一個Web 應用程式。若要為Web應用程式配置應用程式目錄,隻需提供要用于應用程式目錄網站的網站集管理者的名稱。建立應用程式目錄後,網站集管理者可将 SharePoint相關應用程式上載到該目錄。

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

(SharePoint應用程式商店和應用程式目錄對比圖)

  從上圖中,我們可以看到SharePoint商店和應用程式目錄對于本地IT的關系,SharePoint商店不是本文要介紹的,我們進入正題,介紹應用程式目錄。SharePoint的應用程式目錄,是部署在每個應用程式下的一個SPCatelog類型的站點,我們可以在管理中心的UI中根據向導建立,也可以使用代碼建立一個SPCatelog類型的站點,用PowerShell關聯應用程式,這是我們要介紹的内容。

  一開始,我們簡單介紹了應用程式目錄,以及和SharePoint商店的關系和對比,下面我們介紹如何建立應用程式目錄。兩種方式:管理中心UI和代碼建立,前者就是一系列截圖示範,後者才是重點。

  1、打開管理中心,在左側導航選擇應用程式,然後點選管理應用程式目錄;

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  2、可以選擇現有的應用程式目錄網站,或者建立新的應用程式目錄網站;

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  3、如果已存在SPAppCateLog類型的站點,輸入URL位址點選确定即可完成關聯;如果不是SPAppCateLog類型的站點,是不能設定為應用程式目錄的,如下圖報錯;

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  4、走向導建立應用程式目錄,其實就是建立一個SPAppCateLog類型的站點(SPSite),和建立網站集的過程很相似;

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  5、建立完畢,如下圖,我們就可以通過建立的應用程式目錄,上載、分發App了:

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  6、檢視應用程式目錄的網站内容,如下圖:

SharePoint 2013 代碼建立應用程式目錄(App Catalog)

  7、若要規劃應用程式目錄設定,請确定以下幾點:

  Ø哪些 Web 應用程式将需要應用程式目錄。

  此決定與有關在 SharePoint 環境中支援 SharePoint 相關應用程式的決定是一起做出的。如果您的伺服器場中對于不同的 Web 應用程式有不同類型的網站(Intranet、Extranet 和 Internet),則可以确定是否需要為這些 Web 應用程式各配置一個應用程式目錄。

  Ø作為應用程式目錄網站集管理者添加的人員。

  應用程式目錄是 Web 應用程式中的一個網站,隻能通過管理中心中的連結或使用 URL 直接通路該網站。

  1、其實沒什麼太多可說的,AppCatelog就是一個SPAppCateLog類型的站點,上面也已經介紹過了,如下代碼,建立SPAppCateLog類型的SPSite;

  Guid是我要使用的應用程式的ID,當然可以使用應用程式的名稱;2052是中文的意思,如果英文應該是1033;模闆類型雖然我是讀取的,但是輸出看了一眼,就是SPCatelog,然後就是網站的管理者,基本就這麼幾個參數。

2、建立應用程式目錄,PowerShell指令:

  PowerShell指令作用是,把改站點設定為所在應用程式的應用程式目錄,是以不需要指定應用程式,即可。在SharePoint PowerShell中執行,即可。

3、PowerShell封裝的C#方法,如下:

  因為PowerShell預設執行的是Windows的PowerShell,是以需要Add-PsSnapin一下SharePoint的引用(Microsoft.SharePoint.PowerShell)才能執行SharePoint的PowerShell。

  到此為止,應用程式目錄C#代碼建立已經結束了!

畫外音

  我用代碼建立AppCatelog的初衷,是想封裝成WebService,然後給程式調用,然後發現封裝完畢WebService了,但是調用的時候沒有操作PowerShell的權限,後來查了下資料,發現有人可以封裝為COM+元件,但是和我的應用場景不太适合,也就沒再弄下去,是以介紹到這裡,希望能給需要的人,一點點幫助。

特别感謝

  在做這段東西的時候,特别感謝CSDN論壇的天涯海角提供的思路和部落格園的忘憂草提供的PowerShell腳本參考!技術在于分享,有分享、有讨論才有進步。謝謝!

附 錄

使用PowerShell腳本建立SPSite

<a href="http://msdn.microsoft.com/zh-cn/magazine/ff607937.aspx">http://msdn.microsoft.com/zh-cn/magazine/ff607937.aspx</a>

App Management Service cmdlets in SharePoint 2013

<a href="http://technet.microsoft.com/en-us/library/jj219772(office.15)">http://technet.microsoft.com/en-us/library/jj219772(office.15)</a>

規劃 SharePoint 2013 相關應用程式

http://technet.microsoft.com/zh-cn/library/fp161237

繼續閱讀