內容簡介
作為功能豐富的開發平颱,SharePoint2013相對以往版本有更進一步的增強。對於初學者,《SharePoint2013開發入門經典(第3版)》是開始體驗SharePoint的理想切入點;即使已經熟悉SharePoint的功能,通過閱讀《SharePoint2013開發入門經典(第3版)》,也能幫助你進一步掌握在SharePoint2013中開發應用程序的方法。以微軟SteveFox為首的作傢團隊,將在《SharePoint2013開發入門經典(第3版)》中介紹從使用Office服務開發應用程序到創建自定義解決方案在內的所有內容,讓你安心地開始使用全新的SharePoint。
作者簡介
Steve Fox,就職於微軟企業谘詢服務部門(MCS)並擔任總監,擁有超過17年的IT經驗,從自然語言處理到Office、SharePoint以及最近的Windows Azure開發均有涉獵。他目前關注於為企業應用雲服務。
內頁插圖
目錄
第Ⅰ部分 SharePoint 2013入門
第1章 SharePoint 2013介紹
1.1 結識SharePoint
1.1.1 從功能的角度定義SharePoint
1.1.2 從用戶的角度定義SharePoint
1.1.3 用戶界麵介紹
1.1.4 結構介紹
1.2 解決開發者的需求
1.2.1 擴展SharePoint 2013
1.2.2 針對開發者的進一步詳解
1.3 SharePoint 2013:平颱
1.3.1 SharePoint安裝類型
1.3.2 SharePoint 2013的功能
1.3.3 網站集和網站
1.3.4 SharePoint 2013 API
1.4 SharePoint管理中心
1.4.1 應用程序管理
1.4.2 監控
1.4.3 安全性
1.4.4 一般應用程序設置
1.4.5 係統設置
1.4.6 備份和還原
1.4.7 升級和遷移
1.4.8 配置嚮導
1.4.9 應用程序
1.5 本章小結
1.6 推薦閱讀
第2章 SharePoint 2013應用程序模型概述
2.1 SharePoint 2013應用程序模型
2.1.1 Office相關應用程序
2.1.2 SharePoint應用程序
2.2 嚮雲端進軍
2.3 學習SharePoint應用程序的3種部署模型
2.3.1 SharePoint托管
2.3.2 自動托管
2.3.3 提供商托管
2.4 本章小結
2.5 推薦閱讀
第3章 SharePoint 2013開發工具
3.1 跨越各類開發者的SharePoint開發
3.2 在SharePoint中進行基於Web的開發
3.3 網站設置
3.4 使用SharePoint Designer開發SharePoint應用程序
3.5 使用Napa開發SharePoint應用程序
3.6 使用Visual Studio 2012開發SharePoint應用程序
3.7 可用於SharePoint開發的其他工具
3.7.1 使用Expression Blend進行開發
3.7.2 使用Fiddler進行調試
3.8 本章小結
3.9 推薦閱讀
第4章 理解開發選項
第5章 Windows Azure for SharePoint概述
第Ⅱ部分 SharePoint 2013開發基礎構件
第6章 在SharePoint 2013中開發、集成與構建應用程序
第7章 打包和部署SharePoint 2013應用程序
第8章 分發SharePoint 2013應用程序
第9章 客戶端對象模型與REST接口概述
第10章 SharePoint 2013中的OAuth概述
第Ⅲ部分 SharePoint 2013高級開發主題
第11章 開發與SharePoint集成的Office應用程序
第12章 SharePoint 2013中的遠程事件接收器
第13章 使用BCS創建業務解決方案
第14章 使用Office服務開發應用程序
第15章 開發SharePoint 2013工作流應用程序
附錄A 打包和部署SharePoint 2013應用程序
前言/序言
《SharePoint 2013 開發入門經典(第3版)》內容概述 本書旨在為初次接觸 SharePoint 2013 開發的開發者提供一個全麵、係統的入門指導。通過一係列循序漸進的講解和實例,讀者將能夠掌握 SharePoint 2013 的核心開發概念、常用工具以及基本的開發模式,從而為後續更深入的學習和實際項目開發打下堅實的基礎。本書內容涵蓋瞭從 SharePoint 基礎架構的理解,到客戶端和服務器端開發技術的掌握,再到部署和管理等多個方麵,力求讓讀者在閱讀完本書後,能夠自信地進行 SharePoint 2013 的各類應用開發。 第一部分:SharePoint 2013 開發基礎 在開始具體的開發實踐之前,對 SharePoint 2013 的整體架構和基本概念進行深入理解至關重要。本部分將帶領讀者逐步認識 SharePoint 2013 的核心組成部分,為後續的學習鋪平道路。 SharePoint 2013 簡介與開發環境搭建: SharePoint 2013 概述: 介紹 SharePoint 2013 的定位、主要功能模塊(如文檔管理、協作、業務流程自動化等)以及其在企業信息化建設中的價值。我們將探討 SharePoint 2013 的版本差異(如 SharePoint Foundation 和 SharePoint Server)以及它們的功能側重點,幫助讀者理解不同場景下選擇閤適的 SharePoint 版本。 SharePoint 2013 架構概覽: 深入剖析 SharePoint 2013 的邏輯架構和物理架構。我們將詳細講解 Farm(場)、Web Application(Web 應用程序)、Service Application(服務應用程序)、Site Collection(網站集)、Site(網站)等核心概念,理解它們之間的層級關係和相互作用。對於 Service Application,我們將介紹其在 SharePoint 中扮演的關鍵角色,例如用戶配置文件服務、搜索服務、托管元數據服務等,並簡要說明其工作原理。 開發環境準備: 提供詳細的 SharePoint 2013 開發環境搭建指南。這包括安裝和配置 Visual Studio(推薦使用 2013 或更高版本)、SQL Server(用於 SharePoint 數據庫)、以及 SharePoint Server 本身(推薦使用 SharePoint Server 2013 的獨立安裝模式或開發虛擬機)。我們將提供詳細的步驟和注意事項,確保讀者能夠順利搭建一個穩定、可用的開發環境。針對不同的開發場景,例如客戶端開發、服務器端開發,還會提供相應的環境配置建議。 SharePoint 2013 開發工具介紹: 重點介紹 Visual Studio 中的 SharePoint 工具,如 SharePoint 項目模闆、項目項模闆、服務器資源管理器中的 SharePoint 節點等。我們將演示如何使用這些工具創建、調試和部署 SharePoint 解決方案。同時,也會提及其他常用的輔助開發工具,如 SharePoint Manager 2013、U2U CAML Query Builder 等,並說明它們在開發過程中的應用場景。 SharePoint 2013 核心概念與對象模型: SharePoint 列錶與列錶項: 詳細講解 SharePoint 列錶(Lists)和列錶項(List Items)的概念,這是 SharePoint 數據存儲的基本單元。我們將探討不同類型的列錶(如文檔庫、自定義列錶、日曆列錶等),並深入理解列錶的字段(Fields)和視圖(Views)的創建與管理。讀者將學習如何通過編程方式訪問、添加、修改和刪除列錶項,以及如何進行條件查詢和數據過濾。 SharePoint 網站與網站集: 闡述網站(Sites)和網站集(Site Collections)的概念,以及它們在 SharePoint 中的組織結構。我們將講解網站模闆(Site Templates)和內容類型(Content Types)的作用,以及如何使用它們來規範化數據結構和提高內容管理效率。讀者將學習如何通過代碼創建和管理網站,以及如何操作網站屬性和權限。 SharePoint 字段與內容類型: 深入講解 SharePoint 字段(Fields)的類型(如文本、數字、日期、查找、受限列錶等)以及如何自定義字段。我們將重點介紹內容類型(Content Types)的概念,它是組織和管理列錶項字段的強大工具。讀者將學習如何創建和管理內容類型,以及如何將其應用到列錶和文檔庫中,實現更精細化的內容模型設計。 SharePoint 權限管理: 介紹 SharePoint 強大的權限管理模型。我們將講解用戶、用戶組、角色、權限級彆等概念,以及如何通過代碼來管理網站、列錶、列錶項甚至字段的權限。讀者將學習如何為用戶分配或撤銷權限,以及如何實現基於角色的訪問控製。 第二部分:SharePoint 2013 服務器端開發 本部分將側重於 SharePoint 2013 的服務器端開發技術,這也是 SharePoint 開發中最核心和常用的部分。 SharePoint 解決方案開發: SharePoint 項目類型: 詳細介紹 Visual Studio 中 SharePoint 項目的各種類型,如 SharePoint 應用程序(App)項目、沙盒解決方案(Sandbox Solution)項目、以及服務器端解決方案(Farm Solution)項目。我們將分析它們的優缺點,以及適用的場景。 包與部署: 講解 SharePoint 解決方案的打包(WSP)和部署過程。我們將詳細介紹如何在 Visual Studio 中打包解決方案,以及如何使用 `stsadm` 或 PowerShell 進行部署、迴滾和卸載。讀者將學會如何管理解決方案的版本和依賴關係。 功能(Features): 深入講解 SharePoint Features 的概念及其重要性。我們將介紹 Feature 的激活、定義(Definition)、以及如何通過 Feature 來部署和管理 SharePoint 元素,如列錶定義、內容類型、字段、頁麵布局、Web Part 等。我們將演示如何創建自定義 Feature,並將其與解決方案關聯。 服務器端編程模型: 服務器端對象模型 (Server-Side Object Model): 重點介紹 SharePoint Foundation 的服務器端 API,包括 `Microsoft.SharePoint.dll`。我們將詳細講解 `SPWeb`、`SPList`、`SPListItem`、`SPUser`、`SPGroup` 等核心對象的使用方法,以及如何通過它們來訪問和操作 SharePoint 數據。 CAML 查詢: 深入講解 CAML (Collaborative Application Markup Language) 的語法和用法。我們將演示如何使用 CAML 來構建強大的列錶項查詢,實現各種復雜的數據檢索和過濾需求。讀者將學習如何使用 `SPQuery` 對象和 CAML 查詢來提高數據訪問效率。 事件接收器 (Event Receivers): 介紹 SharePoint 事件接收器,用於響應 SharePoint 對象(如列錶項、列錶、網站等)的各種事件。我們將講解不同類型的事件接收器(如列錶項添加、更新、刪除事件,列錶創建、刪除事件等),以及如何編寫自定義的事件處理邏輯,實現數據驗證、工作流觸發、日誌記錄等功能。 工作流開發 (Workflow Development): 介紹 SharePoint 2013 集成的 Windows Workflow Foundation (WF) 4.0。我們將講解如何使用 Visual Studio 創建和部署自定義工作流,實現自動化業務流程。我們將覆蓋順序工作流、狀態機工作流等基本概念,以及如何與 SharePoint API 交互,在工作流中執行操作。 Web Part 開發: Web Part 基礎: 介紹 Web Part 作為 SharePoint 頁麵上的可重用組件。我們將講解如何創建自定義的服務器端 Web Part,包括繼承 `System.Web.UI.WebControls.WebParts.WebPart` 基類,實現 `CreateChildControls`、`OnInit` 等關鍵方法。 Web Part 屬性與連接: 講解如何為 Web Part 定義可編輯屬性,以及如何實現 Web Part 之間的連接(Connections),實現數據共享和交互。 用戶界麵設計: 介紹使用 ASP.NET Web Forms 技術來設計 Web Part 的用戶界麵,以及如何集成 SharePoint 客戶端對象模型(CSOM)或 REST API 來獲取和顯示數據。 第三部分:SharePoint 2013 客戶端開發 隨著 SharePoint 2013 對客戶端技術支持的增強,客戶端開發變得越來越重要。本部分將介紹主要的客戶端開發技術。 SharePoint RESTful API: RESTful API 概述: 介紹 SharePoint 2013 提供的 RESTful API,它允許開發者通過 HTTP 請求與 SharePoint 進行交互,而無需在服務器端編寫代碼。我們將講解 API 的基本結構、訪問方式(GET, POST, PUT, DELETE)以及常用的資源路徑。 數據訪問與操作: 演示如何使用 RESTful API 來查詢列錶數據、創建、更新和刪除列錶項。讀者將學習如何構建 API 請求,處理 JSON 格式的響應,並實現與 SharePoint 數據的交互。 身份驗證與授權: 講解在使用 RESTful API 時如何處理身份驗證和授權問題,例如 OAuth。 SharePoint JavaScript 客戶端對象模型 (JSOM): JSOM 基礎: 介紹 SharePoint JavaScript 客戶端對象模型,它允許開發者在瀏覽器中使用 JavaScript 來操作 SharePoint 對象。我們將講解 `SP.ClientContext`、`SP.Web`、`SP.List`、`SP.ListItem` 等核心對象的使用。 異步操作與執行加載: 重點介紹 JSOM 中的異步操作模型,包括 `executeQueryAsync` 方法和 `load` 方法,以及如何處理迴調函數。 數據操作與查詢: 演示如何使用 JSOM 來訪問和操作 SharePoint 數據,包括查詢列錶、創建、更新和刪除列錶項。我們將展示如何構建 CAML 查詢並在 JSOM 中使用。 SharePoint 應用程序 (Apps) 開發: Apps 模型簡介: 介紹 SharePoint 2013 Apps 的概念,包括 SharePoint Hosted Apps、Provider-Hosted Apps。我們將分析它們的架構和部署模型。 SharePoint Hosted Apps 開發: 重點介紹 SharePoint Hosted Apps 的開發流程,包括使用 HTML、CSS、JavaScript、以及 SharePoint Add-in Model Templates。我們將演示如何創建自定義列錶、頁麵、Web Part 等,並將其打包成 App 進行部署。 Provider-Hosted Apps 開發: 簡要介紹 Provider-Hosted Apps 的架構,以及如何使用外部 Web 應用程序(如 ASP.NET Web Forms, MVC, Node.js 等)與 SharePoint 進行交互。 第四部分:部署、調試與最佳實踐 掌握開發技術後,學會如何有效地部署、調試和遵循最佳實踐同樣重要。 SharePoint 2013 調試技巧: Visual Studio 調試器: 詳細介紹如何在 Visual Studio 中調試 SharePoint 解決方案,包括設置斷點、單步執行、查看變量值、以及使用遠程調試技術。 日誌記錄: 講解 SharePoint 2013 的診斷日誌記錄功能,以及如何配置和利用日誌來排查問題。 錯誤排查: 提供常見的 SharePoint 開發錯誤及其排查思路,幫助讀者快速定位和解決問題。 SharePoint 2013 部署與管理: 解決方案部署: 迴顧和強化前麵介紹的解決方案部署過程,並介紹部署到生産環境時需要考慮的因素,如權限、環境差異等。 PowerShell 腳本: 介紹使用 PowerShell 腳本進行 SharePoint 管理和自動化部署的強大功能。我們將提供一些常用的 PowerShell Cmdlets,用於創建網站、列錶、用戶等。 IIS 配置: 簡要介紹 SharePoint 相關的 IIS (Internet Information Services) 配置,以及它們對 SharePoint 性能和可用性的影響。 SharePoint 2013 開發最佳實踐: 性能優化: 提供 SharePoint 開發中的性能優化技巧,包括高效的 CAML 查詢、閤理使用緩存、減少數據庫訪問次數等。 安全性考慮: 講解 SharePoint 開發中的安全問題,如輸入驗證、防止跨站腳本攻擊(XSS)、權限管理等。 代碼規範與可維護性: 強調良好的代碼規範、命名約定和模塊化設計,以提高代碼的可讀性和可維護性。 版本控製: 建議使用版本控製工具(如 Git)來管理 SharePoint 開發項目。 本書通過理論講解與實踐案例相結閤的方式,力求讓讀者能夠全麵掌握 SharePoint 2013 的開發技能。從基礎概念到高級主題,從服務器端到客戶端,本書都進行瞭深入淺齣的闡述。無論您是初次接觸 SharePoint 開發,還是希望鞏固和提升現有技能,本書都將是您寶貴的參考資料。閱讀本書後,您將能夠獨立設計和實現滿足業務需求的 SharePoint 2013 應用程序。