I’m working with an MVC2 app that had migrated from an MVC1 app quite a while ago. Things have been working – i’ve been able to compile and deploy a number of iterations without any problems (…yeah right…but not problems relevant to _this question…)
I’ve noticed that the version info – that bit in the footer of runtime errors – i’ve received during the normal course of development reads:
Version Information: Microsoft .NET Framework Version:2.0.50727.4952; ASP.NET Version:2.0.50727.4955
despite the fact that the project’s Properties | Application tab shows the target framework to be .net 3.5. I _think 3.5 is required for mvc2 apps, isn’t it?
Shouldn’t I expect to see runtime error pages pointing to version info at the 3.5 version?
UPDATE: As that this isn’t a simple matter of a framework mismatch, here’s the error – but given other factors, I’ll assume I need to repair/refresh the workstation’s framework installs. The same code works on another ws.
=== Pre-bind state information ===
LOG: User = STUDIO11\steve
LOG: DisplayName = System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
(Fully-specified)
LOG: Appbase = file:///_mvc2/foo/
LOG: Initial PrivatePath = C:\_mvc2\foo\bin
Calling assembly : App_Web_enim_j6d, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\_mvc2\foo\web.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Post-policy reference: System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
LOG: The same bind was seen before, and was failed with hr = 0x80070002.
thx
It’s a bit complicated, but essentially the version you are seeing is the version of the CLR runtime. The 2.0, 3.0, and 3.5 releases of .NET share the same CLR runtime. If MVC runs then everything is fine.