2009-04-14 101 views
2

我構建了我的SharePoint網站模板解決方案程序集並將其成功部署到SharePoint,它的版本是6.4.0.2032。我做了一些測試,發現我的代碼有幾個問題。我解決了這些問題。通過「setup.bat/uninstall」卸載我的解決方案。將我的程序集重新構建到版本6.4.0.2033。我再次成功安裝了新的模板,但是當試圖將我的一個Web部件添加到頁面時,SharePoint繼續查找我的程序集的舊版本。無法部署新的SharePoint網站模板程序集版本

我錯過了一個步驟嗎?

下面是從日誌在C片段:\ Program Files文件\ Common Files文件\ Microsoft共享\ web服務器extensions \ 12個\日誌:

04/08/2009 13:04:58.18 w3wp.exe (0x0AA8)       0x0BE4 Windows SharePoint Services  Web Parts      8l4f Monitorable Error importing WebPart. Assembly SharePoint.Site, Version=6.4.0.2032, Culture=neutral, PublicKeyToken=db45c0486d0dc06d, TypeName. SharePoint.Site.MetadataSearch, SharePoint.Site, Version=6.4.0.2032, Culture=neutral, PublicKeyToken=db45c0486d0dc06d 

回答

3

當以前的版本使用「的setup.bat /卸載」我已經注意到,相應的「.webpart」刪除WebParts的文件不會被刪除。當新版本重新解析時,這些「.webpart」文件不會更新並繼續指向先前的彙編版本。

要查看Web部件引用哪些程序集版本:

  1. 打開SharePoint中的頂級站點設置(網站操作>網站設置>轉到頂級網站設置)
  2. 單擊「Web部件老佛爺「下的‘’一欄
  3. 單擊‘編輯’下一個圖標到你的Web部件
  4. 點擊‘查看XML’工具欄按鈕

您應該能夠在編譯的解決方案中找到相應的新「.webpart」文件(應引用您的新程序集)。然後將其上傳到此Web部件庫列表(請記住檢查「覆蓋現有文件」)

如果找不到「.webpart」文件,則始終可以從「Web部件圖庫「並手動修改它。

希望有所幫助。

0

是哪個版本的NI你的web.config文件中引用? 仔細檢查它是否是您期望的版本(6.4.0.2033)。 做一個IIsrest,然後再試一次。

+0

web.config正確,IIS已重置,服務器已重新啓動。下一個? – 2009-04-15 03:22:37

1

在SharePoint中,您有很多對程序集的引用。一些存儲在磁盤上的文件中(佈局文件中的頁面引用),另一些存儲在內容數據庫(內容文件中的頁面引用)中。當您使用解決方案框架進行部署時,SharePoint還會將SafeControls添加到web.config文件中。這些條目通過強名稱引用程序集。

我的經驗是,您應該避免更改SharePoint解決方案的彙編版本 - 它將爲您節省各種麻煩。要跟蹤程序集版本,應該使用程序集文件版本。這不會導致SharePoint的錯誤。

我提到解決方案升級了嗎?只需考慮在Web部分已添加到幾十頁的場中升級程序集即可。所有這些頁面都會引用舊的程序集,並可能在升級後導致未處理的錯誤。

彙編文件版本屬性被設置在AssemblyInfo.cs文件:

[assembly: AssemblyVersion("6.0.0.0")] 
[assembly: AssemblyFileVersion("6.4.0.2033")] 
相關問題