敦群學院-SharePoint精英計畫-系統開發-Day 3

  • 2,757 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,757
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. SharePoint 菁英計畫 系統開發實戰營 敦群數位科技股份有限公司 游家德 Jade Yu Welcome 歡迎參與
  • 2. 課程規劃
    • 第一天
      • MOSS2007 架構與一般企業客製化功能簡介
      • SharePoint Designer 2007
      • Master Page 修改與設定
      • 介面選單修改
    • 第二天
      • SharePoint API 操作與應用
      • 網站集合功能 / 網站功能介紹與實作
    • 第三天
      • 網頁組件開發與部署
      • Event Handler 開發與部署
      • Search API 與 Web Service
    • 第四天
      • Excel Service 應用
      • InfoPath Form Service 應用
      • Open Questions
  • 3. SharePoint 網頁組件開發與應用
  • 4. 整合於 ASP.NET 2.0
    • WSS3.0 已經完全整合在 ASP.NET 2.0 上
    ASP.NET 1.1 WSS2.0 WSS 3.0 ASP.NET 2.0 Window SharePoint Service 2.0 Window SharePoint Service 3.0
  • 5. WebPart 的演進歷程 Wss 2.0 網頁組件 ASP.NET 2.0 網頁組件 Wss 3.0 網頁組件
  • 6. WebPart Page 架構
    • 由 WebPartManager 類別控管網頁組件
    • 具有一個或多個以上的”網頁組件區域”
  • 7. 網頁組件主要程式碼
  • 8. 網頁組件的屬性定義
  • 9. WSS3.0 中的網頁組件類型
    • ASP.NET WebPart
      • 繼承 asp.net 中的 WebPart 類型
      • 以 .webpart 檔案方式匯入
      • 新開發的 WebPart 建議以這種方式開發
    • WSS V2-Style WebPart
      • 繼承 WSS2.0 的 WebPart 類型
      • 以 .dwp 的方式匯入
      • 基本上是為了相容舊的 wss2.0 網頁組件
    • 混合型 WebPart
      • 繼承 wss2.0 的 WebPart 類型
      • 使用新的 asp.net 的相關類型
      • 以 .webpart 方式匯入
  • 10. 網頁組件開發步驟
    • 利用 VS.NET2005 開啟 WebPart Project
    • 設定強制命名及版本資訊
    • 設定 Assembly.cs
    • 編譯網頁組件專案
    • 將 D LL 檔案複製到 bin 目錄下
    • 修改 web.config 將該 dll 宣告為 safeControl
    • 在” 網頁組件庫”中加入該網頁組件
    • 編輯頁面將該網頁組件加入網頁組件區域中
  • 11. 網頁組件的執行安全性
    • 定義於 Web.Config 中
      • OSVR_Minimal
      • WSS_Minimal
      • WSS_Medium
      • Full
  • 12. DEMO 網頁組件的開發與部署
  • 13. 事件處理常式的開發
  • 14. 為何需要事件處理常式
    • 針對清單所產生的事件 , 增加後續執行動作
      • 通知
      • 驗證
      • 額外的工作
  • 15. 事件處理常式的強大功能
    • Events architecture significantly improved
      • Events supported for lists, document libraries and content types
      • Events supported for changes to list schema as well as items
      • Events supported at site collection and site level
      • Events supported for incoming email messages
      • Support for synchronous events and asynchronous events
      • Synchronous events occur before the fact and are cancel-able
  • 16. 如何建立一個事件處理常式
    • 建立一個 EventHandler DLL 檔案
    • 將這個 dll 組件註冊到 GAC(c:windowsAssembly)
    • 撰寫程式將 EventHanlder 加到 List 中
  • 17. ListItem Level Event Receiver
  • 18. Sample Code for EventHandler
    • using System; using System.Collections.Generic; using System.Text; using Microsoft.SharePoint; using System.Net.Mail; namespace myEventHandler { public class handler : SPItemEventReceiver { public override void ItemAdding(SPItemEventProperties properties) { //do something } } }  
  • 19. 編譯時需要注意的事項
    • 必須加上強制命名
    • 必須有版次及組件資訊
  • 20. Register for List EventHandler
    • SPSite site = new SPSite("http://sp:81/SiteDirectory/site1"); SPWeb web = site.OpenWeb(); SPList survey = web.Lists[“ListName"]; string assemblyName = “myEventHandler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a34245adab33a20a"; string className = “myEventHandler"; survey.EventReceivers.Add(SPEventReceiverType.ItemAdding, assemblyName, className); MessageBox.Show("Done");
  • 21. DEMO 事件處理常式的開發與佈署
  • 22. “ 網站集合功能 (Feature)”
  • 23. 什麼是網站集合功能 (Features)
  • 24. 什麼是網站集合功能 (Features)
  • 25. Feature 可套用的範圍 Scope Description Site The Feature is defined at site level. Site Collection The Feature is defined at the level of a site collection. Web Application The Feature is defined at the level of a Web application or a virtual server. Server Farm The Feature is defined at the level of a server farm. All Features that are installed at the Server Farm scope are in the activated state by default.
  • 26. Features 所在的目錄位置
  • 27.  
  • 28. 如何開發一個網站功能
    • 撰寫以下兩支定義檔案
      • Feature.XML
      • Elements.XML
    • 撰寫網站功能所需的網頁程式
    • 安裝 Feature
    • 啟動 Feature
  • 29. Feature.xml
    • <? xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>
    • <Feature Id=&quot;DE98E72D-80FF-4031-88B0-2E4DEF6312C8&quot;
    • Title=&quot;Save Site As Template&quot;
    • Description=&quot;Adds a 'Save Site As Template' link to the Look and Feel menu in Site Settings.&quot;
    • Version=&quot;1.0.0.0&quot;
    • Scope=&quot;Web&quot;
    • Hidden=&quot;FALSE&quot;
    • xmlns=&quot;http://schemas.microsoft.com/sharepoint/&quot; >
    • <ElementManifests>
    • <ElementManifest Location=&quot;Elements.xml&quot; />
    • </ElementManifests>
    • </Feature>
  • 30. Elements.xml
    • <? xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>
    • <Elements xmlns=&quot;http://schemas.microsoft.com/sharepoint/&quot;>
    • <CustomAction
    • Id=&quot;SPSolutions.SaveSiteAsTemplate&quot;
    • GroupId=&quot;Customization&quot;
    • Location=&quot;Microsoft.SharePoint.SiteSettings&quot;
    • Sequence=&quot;1000&quot;
    • Title=&quot;Save site as template&quot;>
    • <UrlAction Url=&quot;_layouts/savetmpl.aspx&quot;/>
    • </CustomAction>
    • </Elements>
  • 31. 安裝 Feature
    • 使用 STSADM.exe
    • stsadm -o installfeature -name SaveSiteAsTemplate
  • 32. DEMO 網站功能的建立與佈署
  • 33. Questions?