应该是兼容的
理论上是的,向下兼容~
并非如此,虽然.net的向下兼容作得还是不错的,但也有一些废弃的特性,一般都会用ObsoleteAttribute标识出来,编译时会产生警告。
大部分情况下,用ObsoleteAttribute标识的对象功能还是在的,编译即使有警告,运行起来仍然正常(但微软并不承诺该功能工作正常)。
但也有不支持的功能。例如,.net 4.0中wpf就不支持.net 3.5中支持的bitmapeffect。http://siderite.blogspot.com/2010/10/replacing-bitmapeffect-in-wpf-4-as-now.html。
绝大多数时候,用.net 4.0编译3.5版的程序是能编译通过的,功能也正常,但建议将因为废弃而产生的编译警告清理掉,用新的方案替换他。