嗨我知道它有点讽刺,但我有一个简单的场景,我们使用VS 2010为SharePoint 2010开发了一个可视化Web部件;它非常好,所以我们决定将它包含在我们的一个旧项目中。
我首先想到(作为开发人员)将代码文件从VS 2010解决方案复制到VS 2008解决方案,使用VSeWSS准备新的WSP并进行部署。 但后来我认为部署当前的WSP可能是可行的;但不幸的是,这不起作用,并抛出以下错误。
解决方案清单 'bac64dd2-95ab-4f22-a4a9-99499652688d' 失败的文件,文件manifest.xml, 第2行,第110行: 'SharePointProductVersion'属性 没有宣布。 SPCurrentWebTreeViewWP.wsp:The 解决方案安装失败。
你认为什么是好方法,是复制粘贴吗?或者使用Manifest.xml。感谢或帮助
答案 0 :(得分:1)
你真的不能这样做。两个版本之间的更改太多,无法将SharePoint 2010 Visual WebPaprt转换为SharePoint 2007.相反的情况会更简单。
我建议您开始查看 SmartPart (http://smartpart.codeplex.com/),这是您最接近2007年Visual Webpart的内容。
答案 1 :(得分:1)
此链接介绍如何使用SP2010开发环境为SP2007制作Web部件:
答案 2 :(得分:1)
如果不查看代码,就无法确定您构建的Web部件是否与SharePoint 2007实际兼容。这完全取决于您是否使用了特定于SharePoint 2010的任何内容。
也就是说,从技术上讲,没有什么能阻止使用Visual Studio 2010构建的可视化Web部件在SharePoint 2007下正常运行。正如Niels中his answer指出的那样,有可用于构建2007解决方案的教程在VS2010下。一定要检查一下。
您的特定错误位于清单文件本身,要解决此问题,您需要从包中删除SharePointProductVersion
属性。为此,请在解决方案资源管理器下打开 Package.package 文件。在“属性”窗格中,找到 SharePoint产品版本设置并清除该值(它将设置为14.0
)。这应该删除基础清单文件中的属性。重建并重新打包您的解决方案并尝试再次部署。
就像我说的,不能保证它会起作用,但它应该让你超越当前的错误。
答案 3 :(得分:0)
错误很明显,清单文件在wsp中是不同的,我建议在vs2008中构建它,并且只使用相同的代码块。 (假设您使用的代码将在2007年运行)