當然最直接的方法,就是
手動部署
.~!oA]?6hM0 把dll放到bin或者gac裡 -> 在web.config裡寫SafeControl -> 在網站集合的web組件庫中添加進來IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM{.T;B@F]i9/
C'L T tCM0命令列部署:通過stsadm工具部署的幾種方法
)|#ql;f7z@(AMP0
_0r!vD+hC0方法一: 2003時代延續的方法
"m*rM B w[)y5D/T0 使用cab包將webpart的dll、dwp、manifest.xml打包成一個cab包
`U*c7o'gMj0y"s0 使用stsadm -o addwppack 部署
5Q;R-]k)y�U}sF2@0 (可以使用stsadm -o enumwppacks瀏覽這樣部署的webpart,
3J%mbm E+FqF0 使用stsadm -o deletewppack卸載)IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMm�~Lcwmv)dh
這種方法也可以適用於新的webpart(asp.net的),編寫.webpart檔案代替.dwp檔案IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM]G!Ay(d?(]/~ u)?@(f
不過需要注意的是這兩種檔案的格式是不一樣的,詳細的就不說了,可以在web組件庫裡開啟一個看看就知道了IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM(S3d8A)i-` L&kCJ0la
T:xt2G/VY/v0方法二:moss裡對方法一的改進
(cD(fY*^0 這個方法我沒有試過,不過看起來和方法一是一致的,不過多了一些參數IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMG�W"R#J} q{D
使用的是stsadm -o deploywppack部署,stsadm -o retractwppack卸載
xW;N0H{1e,t0IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMh#g;M$GS
方法三:通過solution部署IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMM h9Yb*c?
需要編寫一個solution用的manifest.xml,和2003時代的那個manifest.xml很像部署webpart的話,需要在裡面寫上Assemblies和DwpFiles(資源檔的ClassResources是在Assembly裡)IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM)p/r6u6DJ'j
其實solution的wsp檔案就是cab檔案,只不過是換了一個副檔名而已………………
5_`;e*he@0 在SDK裡有具體的格式說明,不過需要注意的是,sdk在這個地方有一個錯誤:在DwpFile節中,sdk中說使用FileName屬性指定dwp/webpart檔案,而實際上,應該使用Location屬性替代FileName屬性IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMll2jg!eo
部署方法(2步):stsadm -o addsolution IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM-L)bhFN'|5LI
stsadm -o deploysolution IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMiis4k4?
卸載方法(2步):stsadm -o retractsolution
GM1i]6q.m0 stsadm -o deletesolutionIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMo!f0]-J,J;[
~o*dg+y3j,r7Z C0方法四:通過solution + feature部署
(D/r@&?8T1~8j0 這是最複雜的一種方法,vs2005擴充包中的webpart模版使用的就是這種方法
xU6km2H[R7_$z?l-f0 它並不是直接將webpart加到solution中,而是將其先加到一個feature中(在feature中包含dwp/webpart,並指定部 署到web組件庫),然後再把這個feature加到solution中(dll檔案還是在solution裡指定),部署的時候除了部署 solution外,還需要啟用那個featureIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM)b(X-T!X-P,u:nQ
這種方法比較靈活,可以在頁面上通過feature來開啟/關閉這個webpartIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMR;/w�o/#?
部署方法(3步):stsadm -o addsolutionIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMm2ZsYC7A
stsadm -o deploysolution
!?KRE:cq*j5O0 stsadm -o activatefeatureIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM/w1KoaYc
卸載方法(4步):stsadm -o deactivatefeatureIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMz2P0Ws2pi
stsadm -o uninstallfeature
/}2DgY:ql4]`R0 stsadm -o retractsolutionIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM�B ~`"H/V s
stsadm -o deletesolutionIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM%ujn'jh
如果是通過vs2005部署的話,我們可以看到在bin/Debug或Release目錄中產生wsp檔案的同時,還產生了一個setup.bat,通過這個bat,就可以非常方便地完成上述步驟:IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COM2h4B$t.f[6ul
部署:setup -iIT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMB4si T"mX$P/
卸載:setup -u
-qbwl9h0IT中國吧——面向IT行業及相關使用者的中文部落格互動社區—WWW.ITCHINA8.COMG6Vu1{8N[/`1zR
註: VS2005裝一個VS Extensions for SharePoint之後有一個項目類型模版叫做webpart,寫一個webpart,然後 F5,就會把webpart部署到你的SharePoint的網站中。實際上也是部署了一個Feature. 其原理MSDN上也有介紹:Walkthrough: Creating a Basic SharePoint Web Part