Кажется, что эта проблема очень популярна, и я уже прочитал почти дюжину подобных вопросов, но все предлагают одно и то же решение (установите и обратитесь к DocumentFormat.OpenXml 2.5), которое я уже сделал, и это все еще не работает.
Я использую Visual Studio 2012, ссылаясь на ClosedXML версии 0.93 и его зависимость DocumentFormat.OpenXML версии 2.5 в моем проекте. Оба .dll-файла хранятся рядом с .exe-файлом моего проекта. Visual Studio видит эти ссылки:
Вверху моего кода у меня также есть:
Imports DocumentFormat.OpenXml
Imports ClosedXML
Однако, когда я вызываю простой тестовый код,
Dim workbook = New ClosedXML.Excel.XLWorkbook()
Dim worksheet = workbook.Worksheets.Add("Sample Sheet")
worksheet.Cell("A1").Value = "Hello World!"
workbook.SaveAs("HelloWorld.xlsx")
Я получаю сообщение об ошибке:
Произошло необработанное исключение типа 'System.IO.FileLoadException'
в System.Windows.Forms.dll
Дополнительная информация: не удалось загрузить файл или сборку
'DocumentFormat.OpenXml, версия = 2.7.2.0, культура = нейтральная,
PublicKeyToken = 8fb06cb64d019a17 'или одна из его зависимостей.
определение манифеста расположенной сборки не соответствует сборке
ссылка. (Исключение из HRESULT: 0x80131040)
Я в недоумении, почему возникает эта ошибка. Если я напишу DocumentFormat.OpenXml. в моем коде я получаю список предлагаемых функций в этой библиотеке, поэтому ссылки должны быть загружены правильно.
Может кто-нибудь помочь, пожалуйста?