2016-01-20 10 views
5

Ich versuche ClosedXML zu verwenden, um Excel-Dokumente innerhalb einer Anwendung zu erstellen, aber wenn ich versuche, es auszuführen, erhalte ich einen Datei- oder Assembly-Serverfehler.ClosedXML - Datei oder Assembly konnte nicht geladen werden

Could not load file or assembly 'DocumentFormat.OpenXml, Version=2.5.5631.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. 

Ich habe mehrere Lösung gesehen, die für die DLL in seinen Eigenschaften und das Hinzufügen der Montage direkt an die web.config des ‚Copy Local‘ Wert umfassen ändern.

Ich verwende Visual Studios 2010 und die Dll-Eigenschaften enthalten keinen lokalen Eintrag. Dann, wenn ich die folgende Assembly in der Webkonfiguration eingebe, bekomme ich immer noch dieselbe Serverfehlermeldung. Ich habe die Assembly von der Fehlermeldung erhalten.

<add assembly="ClosedXML, Version=0.76.0.0, Culture=neutral, PublicKeyToken=fd1eb21b62ae805b"/> 
+0

Ich bekomme diesen Fehler auch. Visual Studio 2017, C#, mit Nuget ClosedXML und allen zugehörigen Abhängigkeiten aktualisiert. Alles funktioniert gut auf dem Entwicklungs-PC von Visual Studio 2017 (Windows 10), schlägt aber fehl, wenn ich die Version auf Windows Server 2016 kopiere. Ich habe dieses Problem xcopy nicht auf Windows Server 2012 R2. Ich hoffe, jemand findet es heraus. – gridtrak

+0

Ich konnte das nugget ClosedXML in Windows Server 2016 nicht ausführen, da es den Fehler "konnte Datei oder Assembly nicht laden" gab. Als ich jedoch den Quellcode für ClosedXML von github heruntergeladen und meine Anwendung darauf aufgebaut hatte, funktionierte alles gut. – gridtrak

Antwort

4

Nachdem ich verrückt nach Antworten gesucht und eine Frage gestellt habe, bin ich auf die einfachste Antwort gestoßen und sobald ich auf die zusätzliche .dll-Datei referenziert habe, funktionierte alles korrekt.

ClosedXML nutzen zu können, die DocumentFormat.OpenXml.dll verweisen muss:

DocumentFormat.OpenXml.dll für NET 4.0 +

1

habe ich das gleiche Problem, aber ich habe soeben die nuget Paket und sorgte dafür, es ist richtig von

using ClosedXML.Excel; 

in meinem Projekt verweist Dann kann ich die Datei Excel-Zugriff mit

var wb = new XLWorkbook(MyExcelFile);