c# - 将可视化 Web 部件部署到 SharePoint 2013 时出错(激活功能)

标签 c# visual-studio sharepoint sharepoint-2013 web-parts

我正在尝试使用 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/

相关文章:

c# - 使用 Floyd-Warshall 算法寻找迷宫

c - "make clean"的任务配置在 Visual Studio 2017 中不起作用

python - Tensorflow Visual Studio 导入错误

javascript - 从 Apache 网络服务器通过 Javascript 创建 Sharepoint 2013 列表项

sharepoint - 为什么我的 Web 部件会引发有关 "NT Authority/Anonymous User"的错误?

c# - 将此 SQL 语句转换为 LINQ

c# - 如果数组恰好是 16 个字节并且取自成功接收的 UDP 套接字,那么 new Guid(byte[]) 是否总是会生成有效的 guid?

c# - 停止服务没有错误 "Service cannot be started. The handle is invalid"

visual-studio - 如何在 Xamarin iOS 应用程序的堆栈跟踪中显示我的源代码?

javascript - 从长字符串中提取