0

C#/ ASP.NET Webサイトを通じて、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;

表示されていない「ワークシートに記入」セクションで私が考えることができる唯一のことは、列を削除し、他の列を左にシフトすることです。

何かご意見は?ありがとう。

4

2 に答える 2

1

GetLock()を使用せずにこれを試しましたか?GetLock()は通常、asp.netプログラミングを行う場合には使用されません。ウェブサイトのドキュメントによると、

SpreadsheetGearのWindowsフォームコンポーネントにアタッチされていないブックセットを使用する場合は、GetLockとReleaseLockを使用する必要はありません。

于 2012-03-27T16:15:42.997 に答える
0

そのため、プロジェクトのbinフォルダーにあるSpreadsheetGearDLLの古いコピーであることが判明しました。更新すると、問題は解決しました。助けてくれてありがとう。

于 2012-04-02T13:41:33.233 に答える