SharePointCommunity
Die deutschsprachige SharePoint Community für SharePoint 2013, 2010 und Office 365


Troubleshooting von “File Not Found. at System.Reflection.Assembly”-Fehlern

Blogs

Fabian´s Blog [SharePoint MVP]

Syndication

Wer mit benutzerdefinierten Anwendungen innerhalb von SharePoint (3rd Party Tools oder eigene Lösungen) arbeitet, kennt evtl. den viel sagenden Fehler File Not Found. at System.Reflection.Assembly. Wenn das erweiterte Logging (CallStack=”true”, customErrors mode="Off") aktiviert ist, wird diese Fehlermeldung noch aufschlussreicher.

image

Die Ursachen dieses Fehlers sind oftmals in SharePoint integriere Webanwendungen, die eine referenzierte Assembly nicht finden können (Assembly Binding-Fehler).

Eine Referenz kann durch die @Reference-Direktive in der ASP.NET-Datei (ASPX, ASCX) oder auch direkt in der web.config definiert werden. So sähe eine Referenz in der web.config aus:

   1:  
   2: <assemblies>
   3:       <add assembly="FM.Components.Logging, Version=1.0.0.0, Culture=neutral, PublicKeyToken=457afe59722ebee2"/>
   4: </assemblies>

 

Die Fehlermeldung ist jeweils die gleiche. Zum Troubleshooting dieses Fehlers stellt Microsoft ein grafisches SDK-Tool bereit, dass durch die Installation von Visual Studio ausgeliefert wird. Der Assembly Binding Log Viewer (FUSLOGVW.EXE) überwacht alle Assembly Bindings innerhalb der Common Language Runtime und gibt detaillierte Informationen über den Erfolg bzw. Misserfolg und dessen Ursachen.

image 

Das Tool kann aus folgendem Verzeichnis kopiert werden: %PROGRAMFILES%\Microsoft SDKs\Windows\v6.0A\Bin (bitte nicht Visual Studio in Produktivumgebungen installieren!). Zum Troubleshooting des File Not Found-Fehlers muss der Assembly Binding Log Viewer wie folgt konfiguriert werden.

  1. Erstellung eines Logging-Verzeichnisses auf dem betreffenden Server
  2. FUSLOGVW.EXE starten
  3. Settings > Log bind failures to disk und enable custom log path
    image 
  4. Worker Prozess (Application Pool) neu starten (wiederverwenden)
  5. Refresh

Nach der Aktualisierung kann die Liste der aufgeführten Logging-Elemente dazu genutzt werden, das Troubleshooting durchzuführen und die verursachende Assembly zu identifizieren.

image

Die Detailansicht eines Eintrags öffnet die entsprechende Log-Datei mit den weiteren Hinweisen.

image


Bereitgestellt 1 Sep 2009 13:48 von Fabian Moritz