我正在尝试使用 Visual Studio 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 进行部署的方法,但我认为这不是理想的解决方案。
有什么建议吗?谢谢!
最佳答案
如果您跳过激活,您应该通过脚本部署功能。
部署 Web 部件的步骤
1 - 在项目设置中转到 sharepoint 并为“事件部署配置”选择“无激活”
2 - 部署项目
3 - 在管理 shell 中运行下面的代码(以管理员身份运行管理 shell)
install-spfeature "yourProjectName_FeatureName" /*exp: TEST.Webparts_Feature1*/
4 - 停用 - 激活“网站集功能”中的功能
关于c# - 将可视化 Web 部件部署到 SharePoint 2013 时出错(激活功能),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27851058/