Visual studio 2010 将SharePoint 2010解决方案转换为2013和Visual Studio 2012

Visual studio 2010 将SharePoint 2010解决方案转换为2013和Visual Studio 2012,visual-studio-2010,sharepoint-2010,visual-studio-2012,sharepoint-2013,Visual Studio 2010,Sharepoint 2010,Visual Studio 2012,Sharepoint 2013,我正在尝试将Visual Studio 2010中开发的SharePoint 2010解决方案(自定义web部件、内容类型、列表、事件接收器等)转换为SharePoint 2013和Visual Studio 2012。当我在VS2012中打开该项目时,它转换了几个项目文件,但由于引用问题而无法编译 我将导致问题的dll(主要是Microsoft.SharePoint…,尽管我也需要复制Microsoft.Office.SecureStoreService.dll)从我的2010服务器复制到20

我正在尝试将Visual Studio 2010中开发的SharePoint 2010解决方案(自定义web部件、内容类型、列表、事件接收器等)转换为SharePoint 2013和Visual Studio 2012。当我在VS2012中打开该项目时,它转换了几个项目文件,但由于引用问题而无法编译

我将导致问题的dll(主要是Microsoft.SharePoint…,尽管我也需要复制Microsoft.Office.SecureStoreService.dll)从我的2010服务器复制到2013服务器,并修复了引用。但是,Microsoft.Office.SecureStoreService.dll仍然向我提供编译器错误,声称“错误203名称空间“Microsoft”中不存在类型或名称空间名称“Office”(是否缺少程序集引用?),而visual studio对名称空间没有问题,并在其中找到SecureStoreProvider类

我还尝试将目标框架从3.5改为4,只在目标框架下拉列表中看到“安装其他框架…”

我相信其他人已经解决了这个问题,但是在构建正确的谷歌搜索查询方面没有成功。一般来说,我对SharePoint比较陌生,如有任何帮助,我将不胜感激

谢谢


Mike

我能够使用以下方法将我的解决方案从2010年的项目升级到2013年。请注意,这将更新您的解决方案以使用新的2013 API。可以只更新项目文件,但仍以2010模式运行

首先编辑.csproj文件(对于c#)。 将目标框架修改为:
v4.5

将这个节点添加到office版本中,我将我的直接放在TargetFrameworkVersion标记下面
15.0

更新引用 重新加载项目并更新引用的程序集。如果尚未指定特定版本,则它们应该已经在引用v15(SharePoint 2013)程序集

14.0.0.0
15.0.0.0
执行查找替换。这会将页面、布局和母版页上的所有引用更新为v15程序集

换电话 将对
SPUtility.GetGenericSetupPath()的任何调用更改为
SPUtility.GetVersionedGenericSetupPath()

检查每个文件以检查任何配置单元引用。您需要在这些文件中添加/15/。例如:_布局/to _布局/15/

在visual studio中打开包“文件夹”,然后更新该包的属性以使用版本15

清理
最后进行编译,清除任何遗漏的项。部署您的解决方案,并确保彻底测试。

我发现有两个站点帮助编译了此解决方案。第一个是它提供了转换的细节,第二个是它有一个很好的powershell脚本来修复目标框架和服务器版本。