我一直在Visual Studio 2010中开发新的SharePoint 2010包。这是我在SharePoint中的第一个开发项目,所以请原谅我使用不正确的术语。
在软件包/解决方案中,有几个功能,一些自定义Web表单,以及自定义列表类型的工作流程,这也属于解决方案。
开发和调试我一直在使用Build>从Visual Studio中部署解决方案选项以构建解决方案,然后它将自动连接到我的sharepoint服务器并创建自定义列表,安装功能,添加工作流等。
但是当我想要进行更改时,请更改自定义NewForm上的文本颜色(我的名称为MyCustomForm.ascx),然后单击Build>部署解决方案它会删除自定义列表,删除工作流,停用和删除功能,然后重新添加它们。因此,我丢失了所有列表项。
在生产中,如果我需要修改工作流程,我不能简单地这样做,因为我们会丢失所有列表项。我怎么能这样做?
我做了几天研究,没有任何作用。我调查了一下:
stsadm -o upgradesolution -name SharePointProject1.wsp -filename ...
stsadm.exe -o execadmsvcjobs
无济于事。它说一切“工作正常”(没有错误)但不更新自定义MyCustomForm。
我也试过手动编辑文件:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONTROLTEMPLATES
无济于事。我修改了MyCustomForm.ascx文件并刷新了SharePoint网站页面,但它没有更改。
任何见解都会有所帮助。我正在运行SharePoint的服务器计算机上进行所有开发,并且如果有帮助则具有管理员访问权限。提前感谢您的所有帮助。
答案 0 :(得分:0)
列表被删除,因为您正在部署的解决方案包中包含列表项,因此Visual Studio通过确保您获得所有内容的最新版本来“帮助”(即使它没有更改)< / p>
您可以采取两种方法来克服这种行为
将部署模型设置为“No Activataion”,这将导致部署软件包并保留以前部署和激活的功能。
通过双击解决方案资源管理器中的包,然后双击右侧窗格中的列表实例项,从包中删除列表实例项。
下次重新部署解决方案时,您不应该删除现有列表(我不是100%关于工作流关联行为)。
在这两个中我倾向于选择2