網路上雖有人提出解決方法: 修改 Compilation, Code Behind
不過似乎有點麻煩, 也會影響效能
決定還是先回頭使用 Visual Studio, 開發能執行客製程式碼的 WebPart
這似乎也是一般建議的方式
在SharePoint上開發組件有二個稍微麻煩的地方
1.不支援 UserControl 的使用,所以在開發程式時無法以所見即所得的方式來撰寫程式
2.Deploy時要手動修改 web.config,加入一長串的程式Token
SmartPart 的出現解決這二個麻煩處,使開發及部署變得很簡單
其概念是先建立一個萬用WebPart, 再於這個萬用WebPart來包裝其他客製開發的UserControl
於是開發過程就得以簡化,
同時藉由整合 WSPBuilder ,自動建立Deploy的執行檔
原本須手動修改的動作都簡化為 mouse click 囉
SmartPart的實作步驟如下:
一.首先要安裝擔任Container的萬用WebPart -- Return of SmartPart
1.下載相關檔案 ReturnOfSmartPart.zip
2.解開後直接到Setup目錄下,可以看到ReturnOfSmartPartv1_3.wsp,這個就是主要的WebPart元件,
按下setup.exe後便會呼叫作者撰寫的Deploy精靈,不斷地進行下一步後就完成囉
在安裝前該程式還會自動檢查是否符合安裝要件:

3.安裝後還要再到Server上去啟動此功能,在[網站設定]->[網站集合功能]中,將Return of the SmartPart v1.3啟動即可

二.安裝 Visual Studio 2008 的 SmartPart 範本
1.在CodePlex下載 SmartTemplates
2.解壓縮後, 是二個範本的 zip 檔:
SmartTemplates SmartPart Project Template.zip
SmartTemplates WebPart Project Template.zip
直接將這二個 zip 檔放到 Visual Studio 的 Template 目錄下即可
\我的文件\Visual Studio 2008\Templates\ProjectTemplates\Visual C#\
重新啟動 Visual Studio 之後就可以在新增專案時看到了

三.使用SmartPart快速開發WebPart
1.啟動Visual Studio後,在新增專案時可以看到多了二個範本:
SharePoint Web Part
SmartPart Web Part
前者是使用一般的方式來開發Web Part,在類別檔(*.cs)的程式中自行撰寫程式
後者則是套用SmartPart,直接開發UserControl(*.ascx)即可
但不論選哪一個,都會有內建的 SETUP 資料夾,提供快速部署的功能檔案
我們當然是選用 SmartPart Web Part 來開發囉
2.Reference MicrosoftSharePoint.DLL
由於我的開發環境不在 SharePoint Server 的那台機器上
所以在開發時便需要先把 MicrosoftSharePoint.DLL 複製到本機上來
這個檔案可以在SharePoint Server上的路徑找到:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI\Microsoft.SharePoint.dll
3.取消Compile時自動執行Deploy的功能
由於SmartTemplate預設在Compile成功後,便會自動執行 Deploy 的指令
若像我一樣開發環境不在 Server 上, 則 Compile 後的指令便會產生錯誤
WSPBuilder 無法順利產生 wsp 檔,同時也無法立即執行 Deploy
這個問題應該可以藉由修改範本中 WSPBuilder 的參考路徑及指定主機位址來解決
不過我對WSPBuilder還不熟,就先直接把這個後段的指令取消即可
取消的方法很簡單,在Project上以右鍵開啟屬性
將[建置事件]中的[建置後事件命令列]中的二個指令清空即可

由原本的指令中也可以發現, 其實SmartPart也只是去呼叫 ./WSP/createwsp.bat 而已
我們等會自己再手動執行即可
4.撰寫 UserControl 程式碼...
5.執行 Compile,並將整個目錄複製到 SharePoint Server 上
切記要整個複製過去,裡面應包含 WSP 及 Setup 目錄

6.手動執行 ./WSP/createwsp.bat
原本在開發環境下執行時都會出現找不到 MicrosoftSharePoint.DLL 的錯誤
這時已可順利完成,並自動產生 *.wsp 的部署檔案了

7.最後一個步驟就是執行 ./Setup/setup.exe 囉
同樣會呼叫前面安裝 Return Of SmartPart 時的Deploy程式

檢查安裝要件後,再勾選要部署的WebSite即可順利 Deploy

完成後同樣記得到 [網站設定]->[網站集合功能]中將新安裝的 WebPart 功能啟動就大功告成~