SlideShare une entreprise Scribd logo
1  sur  47
Silverlight + SharePoint:在企業內網提供用戶端更好的使用者經驗 盧昊 產品行銷經理 台灣微軟 haulu@microsoft.com
課程大綱 在SharePoint上客製化開發 當哈利遇見莎莉: SharePoint & Silverlight? Silverlight Blueprint for SharePoint (SL4SP) 建構酷炫的SharePoint網站 –AdventureWorks for SharePoint Q & A
課程大綱 在SharePoint上客製化開發 當哈利遇見莎莉: SharePoint & Silverlight? Silverlight Blueprint for SharePoint (SL4SP) 建構酷炫的SharePoint網站 –AdventureWorks for SharePoint Q & A
SharePoint= WSS & MOSS
MicrosoftVisualStudio SharePointDesigner + Browser Custom Coding  Web site construction Custom Web Parts Create lists and doclibs Site Definitions Design Web pages Content Types No-code data view/forms Workflow Web part hookup SharePoint 平台開發工具的選擇
SharePoint平台客製化的選擇 不一定所有的客製化需求都需要寫程式 兩套客製化方式,讓開發人員選擇最快速路程 Office SharePoint Designer也是開發工具,能夠省去開發人員相當多的時間 善用 Data View/Data FormWeb Part Master Page客製化、建置CSS Conditional Formatting …
SharePoint Designer 2007 建構新的SharePoint網站並進行表現層客製化 無程式碼設計 (No C#/VB.NET code) 支援IntelliSense 支援ASP.NET 控制項 可檢視與使用Web part 和 Data source
Visual Studio 2008 IDE for creating assemblies, server/user controls and advanced workflows 直接呼叫 SharePoint object model 支援 IntelliSense 藉由Team Foundation Server 可進行完整的程式碼控制 (Source Control)
Visual Studio Extensions for WSS v1.2(VSeWSS 1.2) Visual Studio 2008 上的 Add-on,可以輕輕鬆鬆建置與佈署 SharePoint 客製化專案 提供繁體中文版下載 VS 2005使用者應下載1.1版 Build & deploy 提供各式範本 自動產生Solution Package VSeWSS1.3CTP版已經推出 支援64-bit
VSeWSS 1.2 Item Templates List Definition Content Type Field Control Web Part Module Template Event Receiver List Instance List Definition from Content Type
WSP View & Build  WSP View View -> Other Windows Build and Deploy SETUP.BAT Solution Generator
Demo SharePoint開發 Hello World Web Part
SPGlobalAdmin SPWebServer SPVirtualServer SPControl SPSite SPWeb SPList SPListItem
使用 SharePoint物件模型 - 直接存取 Object Model SharePoint Sites SharePoint 物件模型 WebServices Web PartsWeb Pages Smart 以及Mobile Clients
Demo SharePoint Object Model
課程大綱 在SharePoint上客製化開發 當哈利遇見莎莉: SharePoint & Silverlight? Silverlight Blueprint for SharePoint (SL4SP) 建構酷炫的SharePoint網站 –AdventureWorks for SharePoint Q & A
Evolve Baseline Templates…
當哈利遇見莎莉
To this…
SharePoint & Silverlight - Why? ,[object Object]
更酷更炫的網站
譜出美工與開發人員的愛情
XAML & Code-behind
更有效的管控網頁程式
支援多種語言: C#/VB.Net and dynamic languages (e.g. JavaScript, Ruby, Python, etc.),[object Object]
課程大綱 在SharePoint上客製化開發 當哈利遇見莎莉: SharePoint & Silverlight? Silverlight Blueprint for SharePoint (SL4SP) 建構酷炫的SharePoint網站 –AdventureWorks for SharePoint Q & A
開發環境 Silverlight 2 SharePoint
重要設定 (手動) .NET Framework 3.5 (for Silverlight 2.0) 將System.Web.Silverlight.dll佈署到 GAC DLL可在Silverlight SDK中找到 在IIS Web application 中設定 MIME type 對應至.XAP .xap -> application/x-silverlight-2 修改web.config使其支援 Silverlight 2
不同種類的整合 高度 基本 中度 .NET Assembly 置放於 Web Part <iframe/> Custom SP Object Streaming Services
Web Part 與 Silverlight 結合 Content Editor Web Part 藉由HTML 程式碼在SharePoint加入Silverlight HTMLTextWriter class 在Web Part中呼叫HTMLTextWriter寫出呼叫Silverlight的HTML碼 以Web Part方式開發 Required Assemblies System.Web.Extensions.dll System.Web.Silverlight.dll Also Script Manager on Page Add Silverlight control Control properties … protected override void CreateChildControls()         { System.Web.UI.SilverlightControls.SilverlightmyCustomForm = new System.Web.UI.SilverlightControls.Silverlight();             myCustomForm.ID = "myCustomForm"; myCustomForm.Source = "http://stefoxdemo/XAPS1/CustomerEntryForm.xap"; myCustomForm.Width = new System.Web.UI.WebControls.Unit(475); myCustomForm.Height = new System.Web.UI.WebControls.Unit(300); this.Controls.Add(myCustomForm);         } …
Demo Silverlight & Content Editor Web Part
Demo Hello World Silverlight Web Part
自訂欄位型別 (Custom Field Type) 使用Silverlight作為自訂欄位型別的控制項 InitParameters Hidden field  Create Silverlight  app Create SharePoint project with custom field type
頁面層級的Silverlight客製化 用Silverlight作為基礎頁面美工項目 藉由SharePoint Designer修改Master Page 客製化導覽列 跨site collection 的Master Page 客製化 重要訊息或廣告輪播
課程大綱 在SharePoint上客製化開發 當哈利遇見莎莉: SharePoint & Silverlight? Silverlight Blueprint for SharePoint (SL4SP) 建構酷炫的SharePoint網站 –AdventureWorks for SharePoint Q & A
Demo AdventureWorks SharePoint網站
使用Silverlight與SharePoint Designer客製導覽列
使用Silverlight與SharePoint Designer客製導覽列架構圖
使用Silverlight與SharePoint Designer客製導覽列Master Page Out-of-the-box asp:SiteMapPath Control <aw:Menu ID="CurrentNav" runat="server" datasourceID="SiteMapDS" orientation="Vertical" 	StaticDisplayLevels="1" MaximumDynamicDisplayLevels="0" 	StaticSubMenuIndent="1" ItemWrap="true" AccessKey="3" CssClass="leftNav" 	SkipLinkText="<%$Resources:cms,masterpages_skiplinktext%>"><LevelMenuItemSty	les><asp:MenuItemStyle CssClass="leftNav1" /> … </aw:Menu> Custom Web Server Control <div id="navigation"> 	<div class="navigation_main"> 	<AWSL:AWNavigation runat="server" navigationMapProvider="SPSiteMapProvider" _ 	</AWSL:AWNavigation> 	</div> </div>
使用Silverlight與SharePoint Designer客製導覽列Web Server Control 註冊 ScriptManager 找到導覽列內容(節點) 產生Silverlight導覽列 將資訊傳遞給Silverlight導覽列 繪製(Renders)出Silverlight導覽列
使用Silverlight與SharePoint Designer客製導覽列Silverlight導覽列 接收到啟動參數 (導覽節點) 註冊  storyboards &event handlers 動態產生導覽列選單 提供互動功能
Demo AdventureWorks 導覽列
使用Silverlight連結搜尋服務
呼叫SharePointWeb Services 用於展現存放在SharePoint圖片庫中的多媒體檔案 Silverlight 程式透過呼叫SharePoint  的Web service 進行資料交換
使用Silverlight連結搜尋服務架構圖
使用Silverlight連結搜尋服務Design Pattern Web Part Reusable hosting container Web and WCF Services 在 SharePoint Server 中佈署 SOA的方式讓其他元件呼叫SharePoint搜尋服務 Silverlight Applications 藉由WCF呼叫服務
Demo AdventureWorks 人員搜尋 Web Part

Contenu connexe

Plus de Chui-Wen Chiu

高雄新地標 統一夢世代
高雄新地標  統一夢世代高雄新地標  統一夢世代
高雄新地標 統一夢世代Chui-Wen Chiu
 
天下第一 夜市總冠軍
天下第一 夜市總冠軍天下第一 夜市總冠軍
天下第一 夜市總冠軍Chui-Wen Chiu
 
下班就跑是富有哲學道理1
下班就跑是富有哲學道理1下班就跑是富有哲學道理1
下班就跑是富有哲學道理1Chui-Wen Chiu
 
柬埔寨鄉村婚禮
柬埔寨鄉村婚禮柬埔寨鄉村婚禮
柬埔寨鄉村婚禮Chui-Wen Chiu
 
挖好屬於自己的井
挖好屬於自己的井挖好屬於自己的井
挖好屬於自己的井Chui-Wen Chiu
 
Why The Us Wants War 080702
Why The Us Wants War  080702Why The Us Wants War  080702
Why The Us Wants War 080702Chui-Wen Chiu
 
你今天的選擇是什麼?
你今天的選擇是什麼?你今天的選擇是什麼?
你今天的選擇是什麼?Chui-Wen Chiu
 
我的學思歷程 劉兆玄
我的學思歷程 劉兆玄我的學思歷程 劉兆玄
我的學思歷程 劉兆玄Chui-Wen Chiu
 
Unknown Parameter Value
Unknown Parameter ValueUnknown Parameter Value
Unknown Parameter ValueChui-Wen Chiu
 

Plus de Chui-Wen Chiu (20)

Pythonpresent
PythonpresentPythonpresent
Pythonpresent
 
Introduce Django
Introduce DjangoIntroduce Django
Introduce Django
 
移動內存算法
移動內存算法移動內存算法
移動內存算法
 
墾丁 更新版
墾丁  更新版墾丁  更新版
墾丁 更新版
 
墾丁 更新版2
墾丁  更新版2墾丁  更新版2
墾丁 更新版2
 
高雄新地標 統一夢世代
高雄新地標  統一夢世代高雄新地標  統一夢世代
高雄新地標 統一夢世代
 
Borland傳奇
Borland傳奇Borland傳奇
Borland傳奇
 
Python 庫簡介
Python 庫簡介Python 庫簡介
Python 庫簡介
 
Asp.Net Mvc 1.0
Asp.Net Mvc 1.0Asp.Net Mvc 1.0
Asp.Net Mvc 1.0
 
天下第一 夜市總冠軍
天下第一 夜市總冠軍天下第一 夜市總冠軍
天下第一 夜市總冠軍
 
下班就跑是富有哲學道理1
下班就跑是富有哲學道理1下班就跑是富有哲學道理1
下班就跑是富有哲學道理1
 
認識腸病毒
認識腸病毒認識腸病毒
認識腸病毒
 
排隊的店
排隊的店排隊的店
排隊的店
 
柬埔寨鄉村婚禮
柬埔寨鄉村婚禮柬埔寨鄉村婚禮
柬埔寨鄉村婚禮
 
新 創 意
新 創 意新 創 意
新 創 意
 
挖好屬於自己的井
挖好屬於自己的井挖好屬於自己的井
挖好屬於自己的井
 
Why The Us Wants War 080702
Why The Us Wants War  080702Why The Us Wants War  080702
Why The Us Wants War 080702
 
你今天的選擇是什麼?
你今天的選擇是什麼?你今天的選擇是什麼?
你今天的選擇是什麼?
 
我的學思歷程 劉兆玄
我的學思歷程 劉兆玄我的學思歷程 劉兆玄
我的學思歷程 劉兆玄
 
Unknown Parameter Value
Unknown Parameter ValueUnknown Parameter Value
Unknown Parameter Value
 

Silverlight+SharePoint: 在企業內往提供用戶端更好的使用經驗