Reputation: 11468
I have a Visual Studio 2010 project targeting .NET Framework 4.0. When I add the Primary Interop Assembly for Microsoft.Office.Interop.Outlook (version 10) from the .NET tab of the Add Reference dialog, the .NET Runtime version is listed for the interop assembly as V1.1.4322? Why such an old runtime version? I'm not even sure if it is significant to me. Can someone explain the implications of the runtime version of a referenced assembly? I assume you can reference assemblies built with older runtimes but not newer. That is, I would not expect a .NET 3.5 (CLR 2) project to be able to reference as .NET 4.0 assembly. Regardless, .NET V1.1.4322 is ancient and I don't understand why the Office interop assembly is listing this old version.
Upvotes: 1
Views: 768
Reputation: 7214
There are still a ton of customers out there running 1.x.
Any newer version, can reference and run an older version. Because it's run as MSIL, there isn't any perf hit.
If you compiled interop in a newer version, you would immediately lose those customers that are running on an older version.
If the interops do not need any newer .NET functionality, there isn't any advantage to compiling to a newer version of .NET.
Upvotes: 2