我已经安装了 .NET Framework 4.5,但我只能在我的项目中使用 .NET Framework 4.0,它不支持 BigInteger。我需要适用于 4.5 的 Visual Studio 2012 还是适用于 4.5 的 Visual Studio 2010?
5 回答
是的,您需要 VS 2012 才能使用 .NET 4.5,但是,BigInteger 是在 .NET 4 中引入的
Visual Studio 的每个现代版本(VS 2002 上)都被锁定到特定的 .NET Framework 版本,并且无法“查看”/使用在该 VS 版本之后发布的较新版本。较新的 VS 版本,VS 2008 及更高版本可以“看到”一些较旧的框架版本,但不能“看到”较新版本的 .NET。
VS 2008 键入 .NET 3.5,可以使用 2.0 和 3.0。不能使用 4.0 或 4.5
VS 2010 键入 .NET 4.0,可以使用 3.5、3.0 和 2.0。不能使用 4.5
VS 2012 键入 .NET 4.5,可以使用 4.0、3.5、3.0 和 2.0
如果需要 .NET Framework 4.5 中引入的功能,则需要 VS 2012。
- Biginteger 是在 .net 4.0 中引入的
- 对于 .net 4.0 之前的版本,请尝试intX
正如其他人所指出的,BigInteger 是在 .NET 4.0 中引入的,而不是在 .NET 4.5 中引入的。通过我们在评论中的交流,您似乎没有在您的项目中引用 System.Numerics.dll。
VS 项目引用告诉 C# 编译器哪些程序集定义了将在正在编译的 C# 代码中使用的类型。默认的 Visual Studio 项目模板不包括对整个 .NET 框架的引用。省略了几个更专业的程序集,例如 System.Numerics;如果你想使用它们,你必须自己添加引用。
人们经常将 using 指令 ( using System.Numerics;
) 与引用本身混淆。using 指令仅帮助编译器解析类型名称;它涉及一个命名空间。为了让编译器自己找到类型,您需要一个引用,它标识一个程序集。
该信息应有助于澄清错误消息“名称空间'System'中不存在类型或名称空间名称'Numerics'(您是否缺少程序集引用?)”。这意味着编译器检查了所有引用的程序集,并且没有找到名为System.Numerics
.
要在 VS 2010 中添加程序集引用:
- 打开解决方案资源管理器
- 展开相关项目的节点
- 右键单击引用节点
- 选择“添加参考...”。将打开一个对话框。
- 打开“.NET”选项卡
- 在组件名称列表中找到“System.Numerics”
- 单击“确定”按钮。
.NET 4.5 需要 VS2012。VS2010 仅支持 .NET 4.0。
但是一旦安装了 .NET 4.5,所有 .NET 4 应用程序实际上都在新版本的 .NET 上运行,系统 DLL 的位置是C:\Windows\Microsoft.NET\Framework\v4.0.30319
你的意思是VS2010只能引用系统DLLC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
吗?
在设计时看不到新类型/新库,但可以在运行时使用反射加载?