我有一个网站项目建立在visual studio2010年,它已经成功部署到我的生产环境。我最近已作出一些改变到该网站,还需要添加一个新的支持网站的项目(基于性web部件和它们之间的相互关系,我想这将是有意义的保持在同一项目,因此部分相同的特征)。

无论如何,之后作出的改变,我部署到服务器使用的命令'更新spsolution'.然而,虽然我所做的更改现有网站是立即可见在任何网页的网站部署,我不能部署新创建的网站一部分的特征,事实上我甚至不能发现它在该网部件库。

这只是事后当我删除了新的网站,从现有的项目和创建一个全新的项目,一个全新的wsp文件和部署新的解决方案然后激活新的功能,我能够部署新的网站.

我想知道,是否有什么我做了错误的当运行'更新spsolution'的命令,结果在我的新加入的网站不可用的?

有帮助吗?

解决方案

您需要重新激活更新的功能。重新激活后,Web部件应在库中显示。

其他提示

如果你想这样做"正确的"的方式,那么你应该有用的功能升级。

这是不幸的是不简单,但是给了你很大的控制时会发生什么部署一个新版本的功能。

在你的情况下,它将涉及:

  • 添加elements.xml 文件的新的网络内部的部件 <ApplyElementManifests> 内部 <UpgradeActions> 在feature.xml
  • 更新方案使用 update-spsolution 你有没有
  • 升级的特征(可以通过使用 SharePoint2010功能的升级包)

有关的详细信息功能升级,看到克里斯斯家系列开始 功能升级(第1部分)-基础

虽然它可能似乎如矫枉过正的一个简单的项目,我仍然认为这是一件正确的事情,因为以下原因:

  • 这是一个很好的练习,获得到你应该总是认为升级成为你的特点
  • 如果你的特征是做什么的时启用/停用,如加数据或清理后再启用/停用可能不是一个选项
  • 它可以很容易找到所有的地方为升级的一个特征(建设中)比环虽然看起来对那里的特点是激活和随后关闭/激活

我发现更新WSP有时可能有点棘手。有时,如果您遇到奇怪的行为,有时会做一个完整的Finainodicetagcode / Uninstall-SPSolution会有所帮助。

在我的经验中,部署表单Visual Studio通常在没有挂钩的情况下熄灭。因此,如果我正在部署问题,我会尽量匹配它的部署过程。下面是Visual Studio中的SharePoint项目的“默认”部署配置的描述:

...包中的wsp文件,回收应用程序池,收回 以前的解决方案版本,添加解决方案,激活所有 功能,并运行部署后命令行。

您需要从Web部件库重新激活Web部件 转到“网站”操作>网站设置 在画廊下>网页 在Web零件库文档>新文档中 您将为新的Web部件选择新的Web部件,然后单击填充库 在“新建Web”部分编辑属性中,将组更改为自定义,然后单击“保存” 之后,您将在自定义Web部件中精确新的Web部件

在停用后,然后激活并最终回收应用程序池解决我的问题。现在Web部分显示在Gallery中。

许可以下: CC-BY-SA归因
scroll top