InvalidOperationException: AssemblyLoadContext is unloading or was already unloaded.

  • C#
  • .NET 5–6

    InvalidOperationException: AssemblyLoadContext is unloading or was already unloaded.

    Hallo am Sonntag,


    seit rund einer Stunde erhalte ich folgende Fehlermeldung in dieser Zeile:

    C#-Quellcode

    1. ​var list = Controller.GetKreditkarteEntities().Where(xx=>xx.Buchungsdatum>=start && xx.Buchungsdatum <= end).ToList();




    ​System.IO.FileLoadException: "Could not load file or assembly 'Microsoft.EntityFrameworkCore, Version=6.0.7.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. An operation is not legal in the current state. (0x80131509)" Innere Ausnahme: InvalidOperationException: AssemblyLoadContext is unloading or was already unloaded. Diese Ausnahme wurde ursprünglich von dieser Aufrufliste ausgelöst: [Externer Code]


    Einzelheiten:

    C#-Quellcode

    1. private static BankController _controller;
    2. public BankController Controller
    3. {
    4. get
    5. {
    6. if (_controller == null)
    7. _controller = new();
    8. return _controller;
    9. }
    10. }



    Der zweite Codeblock oben wird noch ausgeführt und Controller ist nicht mehr NULL. Zu ​GetKreditkarteEntities komme ich nicht mehr weil die Ausnahme geschmissen wird.

    ​BankController ist in einer (selbstgeschriebenen) DLL definiert, die im Hauptprojekt als Projektverweis eingetragen ist. Hat alles funktioniert bis vorhin, wobei ich an der DLL gar nicht geschraubt habe.

    Wenn ich das richtig lesen, dann ist die eigentlich einzubindende DLL zum Zeitpunkt des Aufrufs in der oberen Codezeile (Zugriff über Controller) noch nicht geladen oder schon wieder weg und das eigentliche Problem kommt von ​Microsoft.EntityFrameworkCore.


    Es kann aber auch was völlig anderes sein, denn in den letzten Tagen hatte ich so meine K(r)ämpfe mit Fehlermeldungen, die mich mit Schwung in die völlig falsche Richtung lenkten.

    Im Hauptprojekt habe ich ein neues View eingefügt und diverse Korrekturen bzw. Optimierungen durchgeführt. Warum das nun plötzlich dazu führen soll, dass das EntityFramework nicht mehr geladen können sollte, ist mir schleierhaft. Wie gesagt, an der DLL wurde nichts geändert.

    Vielleicht hat jemand einen Tipp, was denn nun wieder hakt.

    Gruß

    MQ