2013-01-14 60 views
0

我正在處理一個需求事件接收器生成頁面內容到Microsoft WordPDF使用第三方DLL。生成完成後,我需要將其上傳到文檔庫。文檔庫中的更新文件

這種情況發生在ItemUpdated上,當doc或pdf文件不在庫中時,代碼工作正常,但是當它們被創建並且我必須更新它們時會拋出錯誤。

ex = {"The file \"http://www-mylab.com/en/home/Documents/James-bond_1033.pdf\" is not checked out. You must first check out this document before making changes."} 

    web.Files.Add(wordFileUrl, wordStream, true); 

回答

0

document library versioning settings上最容易打開「Require Checkout」設置。

否則,您將不得不打電話給SharePoint Lists webserviceCheckInFileCheckOutFile成員。

+0

無需web服務。 'SPFile f = web.GetFile(wordFileUrl); f.CheckOut();'應該做的伎倆。 –

+0

是的,需要更多的信息,因爲這個問題並不建議使用SharePoint OM給我......在這種情況下*需要更多的幫助。 – Nat

+0

不是web.Files.Add(url,stream,boolean)看起來像http://msdn.microsoft.com/en-us/library/ms412937(v=office.12).aspx? –

0

看起來您正在使用SharePoint的服務器對象模型。

SPFile f = web.GetFile(wordFileUrl); 
f.CheckOut(); 

web.Files.Add(wordFileUrl, wordStream, true); 

f.Checkin("new version"); 

應,如果你正在使用服務器對象模型的問題提出這樣的伎倆