Spreadsheetgear поддерживает блокировку файла - PullRequest
0 голосов
/ 27 марта 2012

На веб-сайте C # / ASP.NET я использую SpreadsheetGear, чтобы открыть файл из шаблона, затем вносить изменения в него на основе пользовательского ввода и затем сохранять его в новом месте. Когда я пытаюсь вручную открыть вновь созданный файл после сохранения, я получаю сообщение о том, что SpreadsheetGear заблокировал файл для редактирования.

Вот фрагменты кода ниже:

SpreadsheetGear.IWorkbook workbook = SpreadsheetGear.Factory.GetWorkbook(pathToTemplate);
workbook.WorkbookSet.GetLock();
SpreadsheetGear.IWorksheet worksheet = workbook.Worksheets["sheetName"];
SpreadsheetGear.IRange cells = worksheet.Cells;

//fill in worksheet
...

workbook.SaveAs(pathToGeneratedFiles + exportFileName, SpreadsheetGear.FileFormat.XLS97);
workbook.WorkbookSet.ReleaseLock();

worksheet = null;
workbook.Close();
workbook = null;

Единственное, о чем я могу подумать в неиспользованном разделе «Заполнить таблицу», который даже несколько сложен, - это удаление столбца и смещение других столбцов влево.

Есть мысли? Спасибо.

Ответы [ 2 ]

1 голос
/ 27 марта 2012

Вы пробовали это без использования GetLock ()?GetLock () обычно не используется при программировании asp.net.Согласно веб-сайту ,

Нет необходимости использовать GetLock и ReleaseLock при использовании набора книг, который не присоединен ни к каким компонентам Windows Forms из SpreadsheetGear.

0 голосов
/ 02 апреля 2012

Итак, оказалось, что это старая копия библиотеки SpreadsheetGear в папке bin моего проекта.Как только мы обновили его, проблема ушла.Спасибо за помощь.

...