Wie kann man feststellen, dass eine Assembly mit / für .NET 4.5 im Gegensatz zu .NET 4.0 kompiliert wurde?

Ich habe einige Build-Agenten, die über ein TeamCity-Setup .NET-Code für uns erstellen, und ich frage mich, ob sie trotz der Projekteinstellungen .NET 4.5-Assemblys ausgeben. Meine Zweifel kommen von der Tatsache, dass ich nicht weiß, ob Windows 2012 Server mit .NET 4.5 oder 4.0 ausgeliefert wurde und daher jemals nur 4.0 oder eine der 4.0-Assemblys verfügbar war.

Wie kann ich eine Assembly auf einem Datenträger anzeigen und feststellen, ob sie mit .NET 4.0 oder 4.5 erstellt wurde?

Wie aus. HervorgehtDieser Blog-Beitrag von Marc Gravell, Dortsind Unterschiede in der Art und Weise, wie diese Assemblys erstellt werden, obwohl wir möglicherweise keine .NET 4.5-Assemblys / -Features speziell verwenden.

Ich habe versucht, ILDASM für die Assembly zu verwenden, aber in der Metadatenreferenz einer bekannten .NET 4.5 (.1) -Konsolenanwendung wird weiterhin 4.0 angegeben:

// Metadata version: v4.0.30319

Ich habe versucht, die Anwendung Windows 7 nur mit .NET 4.0 zu starten, und es startet, aber wenn der einzige Weg, um herauszufinden, oballes Arbeiten ist durch TestenallesDann versuche ich lieber ein bisschen mehr, um zu sehen, ob es zuerst mit der richtigen Version erstellt wurde.

Also ist das möglich?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage