Problem getting the AssemblyVersion into a web page using Razor /MVC3

Jay Stevens picture Jay Stevens · May 27, 2011 · Viewed 41.3k times · Source

I'm using the following code in a footer in my _Layout.cshtml file to put the AssemblyInfo version data into the footer of every page in my MVC3 site. However:

@System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString()

Just prints in the footer:

Revision 0.0.0.0

When I modified the view to display all of the assembly info for the "Executing Assembly" using the following

@System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString()

Which prints the following:

Revision App_Web__layout.cshtml.639c3968.hlogy75x, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null

This shows that the "Executing Assembly" isn't my main app, it's the view itself.

How do I get the assembly information for the ACTUAL app, not just the individual views??

Answer

takepara picture takepara · May 28, 2011

cshtml/vbhtml is dynamic compile to assembly.

@typeof(YourApplicationNamespace.MvcApplication).Assembly.GetName().Version

how about this?