Moje ostatnie dwie godziny życia spędziłem na rozwiązaniu problemu:

System.Security.VerificationException: Operation could destabilize the runtime.

Który występował w trakcie serializacji obiektu z wykorzystaniem JSON.NET podczas debugowania aplikacji – po deployu nie występował. By było zabawniej, przy wykorzystaniu JavaScriptSerializer jak i na moim komputerze firmowym, problem nie występował. Czyli coś musiało być nie tak z moją konfiguracją. Jedyną różnicą było włączone… IntelliTrace.

Jak się okazało, IntelliTrace modyfikuje IL (wstrzykuje swój IL by móc śledzić zdarzenia), co wypływa w jakiś sposób na bibliotekę JSON.NET – mówiąc prosto, psuje ją :) Wystarczyło wyłączyć IntelliTrace i nagle wszystko zaczęło śmigać.

3 KOMENTARZE

  1. Można zostawić IntelliTrace włączony ale wymaga to zignorowania tego modułu w opcjach:

    VS -> Options -> Tools -> IntelliTrace -> Modules dodac do ignorów *Newtonsoft*

  2. dobrze wiedziec, dzieki.

    jednak po wylaczeniu vs przestal mi az tak bardzo mulic, wiec pewnie pozostane przy wylaczonym :)

  3. No cóż wygląda na to że IntelliTrace już tak ma..

    Wielkie zdziwko spotkało mnie gdy na dysku C: zaczęło brakować mi miejsca. Jak się okazało IntellTrace defaultowo przy każdym uruchomieniu w trybie Debug zostawia min 10MB plik zrzutu w folderze "C:ProgramDataMicrosoft Visual Studio10.0TraceDebugging" co po dłuższym użytkowaniu zapchało ładnych parę GB pamięci :]

Comments are closed.