首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在为较旧的C#框架版本构建时使用较新的.NET功能安全吗?

在为较旧的C#框架版本构建时使用较新的.NET功能安全吗?
EN

Stack Overflow用户
提问于 2014-02-09 16:59:09
回答 2查看 460关注 0票数 6

我维护一个Visual 2.0库(目前正在使用.NET 2013)。

我在库的代码上使用了一个代码检查工具,当这个工具建议使用??操作符或lambda代替某些代码时,我感到很惊讶。

更令我惊讶的是,我申请了建议编辑,并在此之后成功地构建了库。

为什么Target Framework设置为.NET Framework 2.0的库可以在代码中使用较新的C#特性构建?

在为较旧的C#框架版本构建时使用较新的.NET功能安全吗?我的意思是,库的用户只能使用.NET Framework2.0,我希望他们能够使用这个库,即使我在它的代码中使用lambdas。

EN

Stack Overflow用户

回答已采纳

发布于 2014-02-09 17:07:25

.NET 2.0和C# 2.0是两种不同的东西。在您的例子中,您完全可以拥有一个.NET 2.0库(它是针对CLR2.0的),并使用C# 3.0编译器,例如,它支持lambda表达式。

因此,您应该在编译器版本和所针对的CLR版本之间进行区别。由于您使用的是VS 2013,所以可以使用较新版本的编译器。

在为较旧的C#框架版本构建时使用较新的.NET功能安全吗?

是的,非常安全。生成的程序集仍然以CLR2.0为目标,并且运行时不会出现这个旧版本的CLR的任何问题。

票数 8
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21662062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档