2015-01-08 69 views
3

我試圖使用Visual Studio 2013來部署一個簡單的Web部件到SharePoint 2013,我收到以下錯誤部署可視化Web部件:錯誤到SharePoint 2013(啓動功能)

Error occurred in deployment step 'Activate Features': Feature with Id '....' is not installed in this farm, and cannot be added to this scope.

花了很長試圖找到解決辦法。幾個博客和論壇在談論它並給出不同的解決方案(沒有一個適合我)。

功能範圍設置爲站點,並且解決方案未設置爲沙箱。

如果我選擇跳過激活的選項,則部署工作。但是當我進入網站設置並查看功能時,我無法找到它。 (我查看了網站功能和網站集功能)。

我試圖在幾個不同的地方更改權限。我讓用戶成爲網站所有者以及網站集管理員(同時嘗試主要和次要),但似乎沒有什麼區別。

我是新來的SharePoint的整個複雜的世界,如此裸露與我缺乏確切的條款。在開始使用這個服務器場解決方案之前,我嘗試了使用沙盒,並且一切正常:我能夠進行調試和部署。

我知道有一種使用PowerShell進行部署的方法,但我認爲這不是理想的解決方案。

有什麼建議嗎?謝謝!

+0

您是否嘗試刪除解決方案中的功能並再次創建它們? – Choggo

+0

我有,但每次我部署它們時,我都必須經歷通過PowerShell安裝,禁用和啓用的整個過程。爲什麼發生這種情況一定是有原因的。 – Naner

+0

我的意思是在實際的Visual studio項目中,刪除並重新創建它們。您是否對解決方案軟件包屬性進行了任何更改? (改變了它們影響的服務器類型/在程序包中包含彙編和類似的東西?)另外,解決方案是否參考了第二個Visual Studio項目中的功能? – Choggo

回答

0

如果您跳過激活,您應該通過腳本部署功能。

步驟部署一個web部件

1 - 在項目設置中去SharePoint和選擇「否激活」爲「主動部署配置」

2 - 部署項目

3 - 運行代碼在管理shell中運行(以管理員身份運行管理shell)

install-spfeature "yourProjectName_FeatureName"   /*exp: TEST.Webparts_Feature1*/ 

4 - 取消激活 - 激活「Site Collection Fea tures「

+0

這不起作用,請嘗試更改項目中的程序集版本並再次部署。 –

+0

這種工作。我能夠使用PowerShell進行部署,但我認爲這並不理想。部署後,我無法在網站集功能中找到它。它僅在通過PowerShell激活後才顯示出來。謝謝! – Naner

+0

這很好,它解決了你的問題。 –