Ich habe eine .Net-Webanwendung, die seit etwa 2 Jahren in Betrieb ist. Wir überwachen es mit NewRelic und erhalten mindestens einmal am Tag, oder manchmal mehrmals am Tag, Zeitperioden, in denen jede Anfrage den folgenden Fehler ergibt:
System.BadImageFormatException ... Ungültiges Typef-Token.
Wenn wir den App-Pool recyceln, geht der Fehler verloren. Wenn wir nichts tun, verschwindet der Fehler von selbst, und alles ist gut.
Ich kann kein Muster finden, wenn es passiert oder welche Seite es verursacht.
Da die Wiederverwendung des App-Pools zu helfen scheint, führt das zu der Annahme, dass es sich um einen Speicherfehler handelt. Daher habe ich versucht, die Verwendung von ViewState zu reduzieren, insbesondere bei großen GridViews. Bisher hat es nicht geholfen.
Andere Vorschläge für dieses Problem?
Zunächst würde ich vorschlagen, dass Sie Log Management haben. Am einfachsten wäre es, eine einfache Textdatei zu verwenden, in die Sie einen Fehler schreiben, wenn eine Ausnahme generiert wird, so dass Sie feststellen können, dass überhaupt keine Fehler generiert werden.
Zweitens können Sie versuchen, die Ablaufverfolgung auf Anwendungsebene (in Web.config) zu aktivieren, da Sie nicht wissen, auf welcher Seite Sie die Ausnahme erhalten.
und hier ist ein weiterer Link, der das gleiche Problem hat und uns wissen lassen, ob der folgende Link nicht relevant ist. System.BadImageFormatException: Wie behebt man .NET-Versionskonflikte?