Is there some clever way of getting the date and time of when the dll was built/compiled?
I’m using the assembly version numbering and reflection to retrieve and dis
What about:
new FileInfo(Assembly.GetExecutingAssembly().Location).LastWriteTime;
You can get it by this way:
File.GetLastWriteTime(Assembly.GetExecutingAssembly().Location);
Returns DateTime
object.
If you set the assembly version (usually in AssemblyInfo.cs) to Major.Minor.*
(e.g. 1.0.*
), then you can probably retrieve the build date at runtime with something like this:
var version = Assembly.GetExecutingAssembly().GetName().Version;
DateTime buildDate = new DateTime(2000, 1, 1)
.AddDays(version.Build)
.AddSeconds(version.Revision*2);
When using a *
for the third and fourth part of the assembly version, then these two parts are set automatically at compile time to the following values:
Oh, and you have to take care of daylight saving time yourself (e.g. add one hour if it's daylight saving time).