部署WebPart的兩種方式

2022-02-23 10:45:00 字數 2232 閱讀 2847

主體內容引用自:

,稍作調整

第一步:部署webpart的dll檔案。

第一種部署方式是部署到bin目錄裡面,這種方式部署的webpart只能歸當前的虛擬伺服器使用;

步驟:拷貝dll檔案:在開啟虛擬伺服器的根目錄,比如c:\inetpub\www,然後新建乙個bin目錄,和sharepoint2003不同,預設的時候bin目錄不存在。然後將dll拷貝到bin下。

第二種方式則是部署到gac裡面,這樣部署的webpart則可以在所有的虛擬伺服器中使用,並且還具有較高的效率。

步驟:直接把dll檔案拖到路徑「c:\windows\assembly」下,就會自動註冊到gac中了。

第二步:修改web.config

把webpart註冊為安全控制項。比如

第三步:有兩種方式,

第一種:建立描述檔案,自動匯入webpart

描述檔案的建立有著很大的學問,在sharepoint2007中,存在兩種webpart的描述檔案,一種擴充套件名為.webpart,另一種擴充套件名為.dwp,.dwp的使用方法和sharepoint2003的dwp相同。.dwp的出現主要是為了能夠和上一版本相容,現在建議使用.webpart描述檔案。

描述檔案你可以放在兩個地方(實際上應該還有第三個地方可放,暫不述),第乙個地方是webpart gallery,第二個地方是虛擬伺服器根目錄下的wpcatalog目錄。.dwp和.webpart兩種檔案的使用方法完全一樣。

當加入到wpcatalog時,需要重啟一下應用(隨便修改一下web.config就可以重啟應用)。當重啟應用後,sharepoint2007會讀取wpcatalog中的檔案,然後載入到記憶體以供我們選擇。這時webpart就部署好了。這種方式的最大問題是你必須自己寫描述檔案,而不能自動生成(通過工具wspbuilder會自動生成)。

第二種方式放在webpart gallery中

這是sharepoint2007內建的乙個文件庫,放在這裡面的乙個好處是不用重啟應用,當你將描述檔案加入到這裡面是,你就可以直接在新增webpart的列表中看到新增加的webpart了。除了手工的上傳.dwp或者.webpart描述檔案到webpart gallery中,還可以自動生成。自動生成取決於兩個條件,第乙個是你的dll已經拷貝到正確的位置,第二個是web.config中已經加入了描述,缺一不可。當這兩個條件滿足後,選擇webpart gallery上的new按鈕,就會列出你新部署的webpart。webpart gallery的位置在主頁的action下來選單中,選擇site settings -> modify all settings,然後選擇webpart,就會進入到webpart gallary。

選中後,點選上面的populate gallery按鈕,就會把自動生成的描述檔案新增到webpart gallery中。

這裡要注意的是,如果你的dll是sharepoint2003的webpart(也即.net1.1的程式集),會自動生成.dwp描述檔案。如果你是.net2.0的程式集,也即sharepoint2007的webpart,則會生成.webpart描述檔案。

另外乙個問題,即強簽名的程式集,如果你要部署到gac中,則只要把dll拷貝到gac裡面即可,其它步驟都相同,不同的僅僅是dll放的位置。當你要放入到gac中時,你必須對程式集進行簽名,也即製作乙個強簽名程式集。使用sn -k outfile來生成key。但是如果你把強簽名的程式集放入到bin目錄中而不是放入到gac裡面的時候,你有時就會發現出現這麼乙個對話方塊:

這是因為程式集被安裝在了乙個被部分信任的區域,如何解決這乙個問題呢?有兩個方法,一是使用dwp檔案描述,當你使用dwp檔案描述的時候,無論dwp檔案在webpart gallery中還是在wpcatalog中,都不會有這個對話方塊出現,webpart可以正常使用。第二種則是對程式集進行乙個宣告,在assemblyinfo.cs檔案中加上一句「[assembly: system.security.allowpartiallytrustedcallers()]」,然後使用.webpart描述檔案就沒有問題了,無論這個檔案放在webpart gallery中還是wpcatalog中,所以這個宣告也僅對.webpart的描述檔案才有效。這裡你還會發現乙個有趣的現象,當你使用了強簽名後,無論是自動生成的.webpart檔案還是直接上傳到webpart gallery中的.webpart檔案,裡面的publickeytoken都會變成null,這點很奇怪。我也沒有想明白是怎麼回事,但是這個不影響webpart的使用。

Tomcat部署兩種方式

一 在myeclipse軟體中部署 1 在myeclipse中,建立好工程後,在myeclipse選單欄中選擇 windows preferences myeclipse tomcat5,選擇 enable tomact home directory要選擇你機器上tomcat所安裝的目錄。然後,再w...

Tomcat的兩種部署方式

1 通過eclipse配置,在context.xml和server.xml裡面配置東西。在context.xml中標籤裡面新增這段東西 在server.xml中的裡面新增這段東西 2.通過tomcat配置 在tomcat目錄下面進行配置 在e tomcat tomcat7 conf catalina...

部署到IIS的兩種方式

1 程序內託管 程序管理器 iis和windows服務 收到請求的時候啟用應用,並且在應用發生故障的時候負責重啟,直接把請求給應用 iis整合,這裡沒有kestrel 2 程序外託管 通過反向 請求 給應用 3 有什麼區別?我應該怎麼選擇?結論,程序內比程序外效能要高,程序外,多了個 環迴介面卡 網...