BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第1章節--SharePoint 2013 介紹 SharePoint 2013 平臺
BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第1章節--SharePoint 2013 介紹 SharePoint 2013 平臺
SharePoint保持了一個高級的架構。由很多部件組成(例如以下圖)。你首先在Windows上安裝核心軟件。這樣你能夠創建SharePoint場。
本質上,SharePoint場是一個或多個構成你SharePoint實例的server。作為一個開發者。你應該理解三層結構和SharePoint場架構的角色--包括Webserver角色(一個響應用戶請求並載入網頁的高速、負載均衡、輕量級server)、應用程序server角色(提供SharePoint服務功能如Excel服務)以及數據庫server角色(儲存內容和服務數據)。你的Apps可能與不論什麽一個或全部server角色交互。
你能夠有一個獨立安裝的server作為整個場(比如上圖中全部的部件都安裝或在一個機器上工作)。對於測試和輕量工作負載,依據硬件規格,這個配置可能足夠了。對於更大組織部署,考慮到失效備援和過剩,單個server的場是不夠用的。然而,Windows操作系統是你主要的安裝平臺--特別是Windows Server 2008,2008 R2和Windows Server 2012。SharePoint 嚴重依靠SQL Server作為基本內容數據庫,ASP.NET/IIS作為應用程序服務server。
然後你能夠安裝SharePoint Foundation(免費)或Server (帶有企業級功能),在上面你能夠構建和安裝自己定義。或者。作為候選。安裝SharePoint Foundation或Server,你能夠註冊Office 365。為你支持並管理基礎設施,可是仍然給你編程的能力。
SharePoint 安裝類型
SharePoint Foundation
SharePoint Foundation是一個免費的可下載的安裝。代表了SharePoint基礎部分。包含一些功能如安全和管理、用戶和團隊網站協作以及一些Apps(如文檔庫和列表)。
本質上,它提供基本系列的功能。使你可以開始使用和開發SharePoint。
雖然SharePoint Foundation中的功能沒有Server版本號帶得多,可是下載安裝它是免費的。你能夠開始很快地執行這個版本號。使用它開始你的開發工作。
在SharePoint 2013中。你也能夠很快地創建SharePoint Online網站—上面有富開發模型。
SharePoint Server
SharePoint Server提供了豐富的功能,將Foundation 中提供的進一步拓展。這些功能包含額外的Apps類型、Officeserver端服務如Word和Excel Service、增強的搜索版本號、增強的BI,還有非常多。以下的列表提供了SharePoint Server中可用的服務樣本:
- Access Service---- 同意使用Access 2013 Previewclient創建新的Access服務應用程序。在瀏覽器中查看、編輯並與Access Services數據庫交互。
- Access Services 2010----同意使用Access 2010和Access 2013 Previewclient繼續維護SharePoint 2010 Access 服務應用程序。不同意用戶創建新應用程序。
- App Management Service----同意安裝來自外部App文件夾或公共SharePoint應用商店的App。
- 業務數據連接(BDC)----訪問業務線數據系統。
- Excel Service----在瀏覽器中查看並與Excel交互。
- 機器翻譯服務----訪問托管分類結構、關鍵詞和社交標簽基礎設施以及在站點集中公布的內容類型。
- PerformancePoint----提供PerformancePoint Services功能。
- PowerPoint Conversion----轉換PPT為不同格式。
- 搜索----爬網並為內容建立索引,提供搜索查詢。
- Secure Store Service----提供單點驗證登陸訪問多個應用程序或服務。
- State Service----為SharePoint Server部件提供臨時用戶會話數據保存。
- 使用狀態和健康數據收集----收集場使用狀態和健康數據,提供查看各種使用和健康報告的能力。
- 用戶配置文件----加入支持我的站點、配置文件頁面、社交標簽和其它社交計算功能。
- Visio Graphics Service----在瀏覽器中查看並刷新公布的微軟Visio表格。
- Word Automation Services----運行自己主動批量文檔轉換。
- 工作管理----在工作管理系統中提供任務集成。包含微軟SharePoint產品、微軟Exchange Server和微軟Project Server。
- 微軟SharePoint Foundation訂閱設置服務----跟蹤以分開模式部署之服務的訂閱IDs和設置。
僅僅適用於Windows PowerShell。
Office 365
Office 365已經成為第三個、全然雲支持的SharePoint模型----與在你內部部署的數據中心中支持場相比。它也成為一個你開發富應用程序(SharePoint支持或雲支持Apps)的好地方,而且擴展時不須要管理內部部署基礎設施的成本。它沒有與SharePoint Server全部同樣的服務和功能,可是也帶了一些不錯的開發功能。
作為開發者你能夠自己定義不論什麽一個SharePoint版本號,不管是Foundation、Server還是Office 365.比如,除了主題和品牌化自己定義,你也能夠開發和部署自己定義解決方式到每一個SharePoint版本號。
有你用C#或VB開發的.NET應用程序,並作為.WSPs或.APPs部署到SharePoint、或者輕量級Apps如HTML5和JavaScript Apps,你也能夠部署。重要的是理解在不同版本號中自己定義機會是變化的;你將在本書中了解怎樣在這些選項中選擇。
SharePoint 2013功能
SharePoint內置了一些功能讓你不用開發就可以利用這個平臺。構建你的Apps時,你也能夠使用或拓展這些核心功能。微軟一直將這些功能成為工作負載。
這些工作負載提供了談論新版本號SharePoint帶來的不同功能的方式。你應該將這些工作負載看做不僅是核心系列的相關應用程序,並且是你自己的應用程序開發的機會。
對於經驗豐富的SharePoint開發者,你會通過SharePoint工作負載指導其核心功能。在SharePoint 2010中,這些工作負載是:
- 站點--代表可用的不同類型站點以及功能。
- 溝通--代表溝通和社交功能如博客與維基;
- 內容--代表核心企業內容管理功能;
- 搜索--代表搜索驅動功能;
- 視野--代表商務智能如KPIs;
- 綜合--代表通過使用如業務連接服務(BCS)集成外部應用程序的能力。
下表列出了SP2013核心功能的樣本。資深開發者會看到非常多熟悉的地方,由於SP2010中可用的仍然在SP2013中可用,僅僅是有所添加。比如。註意之前“SharePoint安裝類型”中列出來的服務,機器翻譯服務、Access服務、App管理服務、工作管理服務對於SP2013都是新的。並且Office Web Application(OWA)不再是服務。而是單獨server產品--將會影響你的SharePoint場拓撲設計。2010中FAST搜索也被作為單獨server產品納入SP2013中,由於它提高了搜索體驗。整個移動到雲是思考SP開發的主要轉變。同一時候它令人激動。也給開發者帶來挑戰,他們須要考慮以以往不同的方式進行App設計與部署。
下表的功能樣例提供了很多不同的開發機會。
用途 | 原生功能 | 樣例拓展 |
站點 |
站點是你非常easy發現SharePoint協作特色的地方。 包括大量功能。如創建、保存和抽取數據,管理、標簽和搜索內容、文檔和信息。你也能夠通過列表和文檔庫連接到Office2013client應用程序。
|
站點、站點模板、SharePoint Apps、工作流、母版頁、站點頁面。
|
社交 | 提供社交網絡功能、新聞源和配置文件搜索、標簽,還有搜索、定位和與人交互(通過他們的技能、組織定位、關系和內容排名)。 | 搜索自己定義、排名和標簽功能、博客、維基和元數據標簽。 |
內容 | 包括探索、搜索和管理能容的功能(使用網頁、Apps、工作流或內容類型)。 | SharePoint Apps、工作流、Word或Excel Services |
搜索 | 以豐富動態方式通過OWA用實時文檔視圖,搜索SharePoint內外的內容。集成結構化數據庫系統信息和內部部署或基於雲的LOB系統如SAP、Siebel和微軟Dynamics。 |
SharePoint搜索、搜索自己定義、業務數據連接。
|
視野 | 主要是包含BI和支持,如集成Access到SharePoint的功能;使用Excel和SQL Server訪問並在網頁上顯示數據。啟用儀表板和KPIs轉化原始數據為可操作信息。 |
Excel服務、Access服務、儀表板、BDC和PerformancePoint服務。
|
互通性 |
使用新Office應用程序模型Apps(想想鏈接到雲服務而不是VSTO托管代碼插件的HTML與JavaScript自己定義任務窗格)從LOB集成到Office集成來自己定義解決方式開發。
|
BDC、Office Apps、自己定義開發。
|
品牌化 | 通過改變內置模板或很多其它具體且有組織的品牌化改變網站外觀。 |
外觀的開箱即用配置、母版頁、Sharepoint自己定義Apps。
|
站點集和站點
站點是SharePoint核心藝術品,代表了開發者起點。就是說假設你不能建站點集,你就不能開始開發。能夠使用非常多類站點模板。下圖顯示了創建站點集時你能夠選擇的默認模板。這個樣例包括了在Office 365中創建新站點集可用的選項。可是類似的模板在Foundation和Server版本號中也可用。下圖僅僅是個子集。
點擊其余選項卡能夠看到很多其它。
每一個選項卡都包括特定模板--比如,管理會議、博客、短期會議工作區、長期項目,還有建立自己定義模板。
由於你必須建立SP站點作為起點。我們首先創建一個SP站點。
本練習如果你有Office365在執行。你能夠進入http://www.microsoft.com/office/preview/en點擊試用,在企業類別點擊試用。然後使用一個向導能夠支持Office365實例。
嘗試:創建你第一個SP站點
為了在Office365實例中創建一個團隊網站:1. 導航到管理門戶網站,輸入username和password登陸。
2. 點擊Admin下拉列表,選擇SharePoint,打開SharePoint管理中心。
3. 點擊左邊的站點集。
4. 選擇新建私有站點集。
5. 在新站點集對話框。輸入標題和公共站點地址,選擇模板(這裏選擇協作選項卡的開發者站點),時區默認。加入自己為管理員,提供儲存配額和server資源配額。
6. 點擊確定。
7.等待幾分鐘。完成後點擊鏈接進入新網站。
工作原理
這裏你創建的是一個站點集。本案例中站點集時特定於開發者的站點,代表了最上層的根站點。你如今能夠加入默認Apps(如列表或文檔庫),創建並部署SharePoint Apps,配置站點外觀等等。
站點集是一個你能夠自己定義和交互的站點。通過加入站點來擴大你的SharePoint站點集。站點集下創建的站點都叫子站點。
這可能有點令人迷惑。可是僅僅要將站點集想象為父親,裏邊的站點為孩子即可了。這非常重要,由於默認子站點繼承父站點屬性(如權限)。
創建站點集時SharePoint開發任務中最基礎的;一旦完畢了這個,你就準備好了開始構建Apps。
此時理解可用的APIs類型是實用的。
SharePoint 2013 APIs
創建站點集後,你就能夠有基礎的父級對象來編程。作為開發者,你想要了解能對站點做什麽。
這要求對可用APIs和服務有基本了解。你會想要最多地了解兩個對象模型:server和client對象模型。
server對象模型
server對象模型在Foundation和Server版本號中都有保留。當你安裝並自己支持時。對server有全然控制權限。它也是托管SharePoint類中可用APIs覆蓋最廣的。使用server對象模型。你能夠構建很多不同類型應用程序。用於文檔庫或列表創建、管理。抽取用戶信息,站點管理、備份、分類和元數據管理等任務。server對象模型類在Microsoft.SharePoint命名空間可用。
server對象模型通過部署到全局程序集緩存(GAC)的一系列程序集可用。所以你必須在server上為它們部署Apps以使用這些類和庫。然而,使用它們你能夠做非常多。
比如以下代碼片設置Tasks列表標題和描寫敘述,然後調用Update方法更新改動。
SPList myTaskList = mySPTaskSite.Lists["Tasks"]; myTaskList.Title="Sales Task List"; myTaskList.Description="A list of sales tasks."; myTaskList.Update();
client對象模型
client對象模型在遠程或client應用程序中也是可用的。這些應用程序能夠是.NET,silverlight。或者新增加到SP2013的成員,移動API。這非常重要,由於它提供給你能力創建和部署不必依靠server端資源的Apps。比如,以下代碼片展示了SPclient代碼樣本。你能夠看到client對象模型有些不同。在這個片段中。你設置SP站點上下文。載入它。然後調用ExecuteQuery()方法--運行之前代碼行設置的全部內容(想象一個更加優化、批處理方法)。最後一行設置lblSPLabel對象(一個標簽)文本屬性為SP站點標題。
ClientContext context = new ClientContext("http://MySharePointSite"); Web web = context.Web; context.Load(web); context.ExecuteQuery(); lblSPLabel.Text = web.Title;
JavaScript對象模型
SP2013也有JavaScript對象模型。這是client對象模型中可用內容的拓展,提供給你機會構建很多其它種類SP支持的Apps與HTML5、jQuery和其它Web技術集成。模型之外
server對象模型和client對象模型之外。還有非常多其它方式你能夠構建SP應用程序和解決方式。比如你能夠使用豐富系列的OData和REST(表述性狀態轉移)服務與SP數據交互。也要註意到client對象模型有非常多與REST相當的功能保證你有多個方法構建Web Apps。SP中REST服務支持Atom和JSON格式。在你創建的每一個SP站點中,你將發現很多不同機會創建和對數據編程。在SP的世界裏,數據意味著很多不同的東西。如:
- 與Access Services集成。
- 與SQL Server數據交互。
- 通過BDC與LOB和非微軟系統集成,與服務終點交互。
- 使用SQL Server Reporting Services或PerformancePoint Server給解決方式帶來增強BI。
- 對可能來自SP列表(用戶手工輸入列表數據)的數據進行編碼,用程序編碼。
之前的APIs代表了你能夠對SP編程的核心系列方式--從全然自我支持的server實例到雲支持的Office365.除了這些核心APIs和服務,你將發現你能夠通過程序與很多SP Foundation或Server帶的服務進行交互。
你也會發現你能夠構建並部署雲支持的Apps(不管是到Windows Azure還是到其它域或Web技術)。
很多做SP開發的人也將管理SP站點的某些部分。這可能意味著你必須安裝和配置SP,理解怎樣使用管理中心站點功能從SP2010升級到SP2013,或者甚至創建新Web應用程序或站點。由於你可能會使用到SP管理中心的功能。以下部分提供了以這樣的方式與SP2013交互的概覽。
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第1章節--SharePoint 2013 介紹 SharePoint 2013 平臺