有没有工具可以将.NET 4.0应用程序转换为.NET 3.5应用程序?

4

我的当前应用程序是使用.NET 4.0构建的,并且它确实有对Telerik控件和其他几个控件的外部引用。

不幸的是,我需要使用.NET 3.5构建我的应用程序... 长话短说

有没有工具可以将.NET 4.0应用程序转换为.NET 3.5应用程序?

谢谢,


1
你尝试过在 Visual Studio 中简单更改项目设置并运行构建吗?是否出现任何(编译)错误? - Christian.K
是的,我尝试过了,但出现了很多错误,主要是关于我使用的Telerik控件和其他一些功能的抱怨。 - The Light
+1 对于“长话短说”的支持... 最近我也经历了这种情况。 - webdad3
3个回答

2

如果您将应用程序的属性从4.0更改为3.5并构建它,它很快会告诉您任何错误。但请注意,4.0有许多不向后兼容的功能。


2
该工具是Visual Studio(还有您聪明的程序员头脑)。
按照以下步骤进行操作:
1. 在“项目”菜单中,点击“项目名称属性”。 2. 点击“编译”选项卡。 3. 点击“高级编译选项”。 4. 在“目标框架(所有配置)”列表中,选择.NET Framework 3.5。 5. 点击“确定”按钮。 6. 在“目标框架更改”消息中,点击“是”按钮。 最后,在构建过程中出现任何错误时,请修复这些错误,以防您使用的内容依赖于.NET 4.0并且不支持.NET 3.5。

我知道如何在.NET 3.5中编译它;问题是关于一个转换器的。我可能需要找到我正在使用的所有程序集的旧版本 :( - The Light
1
我曾经和你一样,将Telerik项目从2010转换到Visual Studio 2008,因为我们公司还没有使用VS2010。但不幸的是,你将不得不卸载(或注释掉)新代码中的很多功能,因为它们在.NET 3.5中根本无法工作,因为Telerik RadControls是ASP.NET AJAX Control Toolkit的包装器,许多新功能仅在.NET 4.0中可用。不使用某些功能是可以的,因为升级不需要新功能。 - Entree

0

如果您要降级项目中引用的程序集,您需要前往下载dll/assembly文件的源头获取.NET 3.5版本的文件,或者下载.NET反编译器,自行修改源代码并重新编译源代码项目为.NET 3.5版本。然后从项目中取消引用旧的dll文件,并重新引用新的dll文件。

我也曾经做过和你一样的事情,将Telerik项目从Visual Studio 2010转换为2008(因为我们公司还没有使用VS2010),但不幸的是,您将不得不卸载(或注释掉)新代码中的许多功能,因为它们在.NET 3.5中根本无法工作,因为Telerik RadControls是ASP.NET AJAX Control Toolkit的包装器,许多新功能仅在.NET 4.0中可用。不使用某些功能是可以的,因为升级不需要新功能。

将Telerik解决方案和项目从Visual Studio 2010转换为Visual Studio 2008是容易的部分。

在*.sln文件中更改格式..

old: Format Version 11.00
new: Format Version 10.00

在 *.sln 文件中,更改 Visual Studio 版本..
old: # Visual Studio 2010
new: # Visual Studio 2008

在 *.csproj 文件中,将 .NET 版本的 "ToolsVersion" 从 "4.0" 更新为 "3.5",如果发现任何 v10.0 的情况,则也更新为 v9.0。
然后开始取消引用 .NET 4.0 dll 文件,并用 .NET 3.5 替换它们,注释掉任何破损的代码。如果可以修复,就进行修复。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接