C#版本,VS版本和.NET框架版本等如何组合在一起?

Oxe*_*rik 5 .net c# asp.net

我很困惑MS堆栈的所有部件如何组合在一起.对于给定的项目,C#版本,Visual Studio版本,.NET框架版本和ASP.NET版本(与.net版本相同吗?)如何组合在一起?

例如,如果我将Visual Studio 2010用于面向.NET framework 2的项目,我如何知道可以使用哪些C#或ASP.NET功能?

SLa*_*aks 5

C#版本控制您可以使用的语言功能; 它独立于其他一切.(因为它只是编译器)
即使在定位旧框架时,您也可以使用(大多数)更新的语言功能.

但是,其中一些功能(例如,dynamic或NoPIA)取决于特定.Net Framework版本中的功能.

.Net Framework版本控制.Net的哪些部分可以使用; 一些.Net功能(例如,LINQ或TPL)在较新版本中引入(分别为3.5和4.0)

为了使事情变得更复杂,ASP.Net在运行时调用C#编译器来编译ASPX或Razor视图(以及Web站点项目中的独立文件),因此在这种情况下,您不能使用比框架版本更新的语言功能.