這是這是一個自定義的WebPart 打算添加到文檔設置爲什麼SPContext.Current.Listitem爲空? *編輯的清晰度*
我無法測試其對文檔集的代碼,因爲我只能得到「SP基礎」裝在我的開發筆記本電腦上,所以文檔集不可用。相反,我創建了一個文檔庫,添加了一個文件夾,並將2個文檔放在該文件夾中。我試圖從文件夾內對其中的文檔執行此操作。
我補充說,火災這個代碼庫頁面的按鈕。 下面是當按下按鈕觸發該代碼:我得到SPContext.Current.ListItem的unhandledexception是空
void btnSubmit_Click(object sender, EventArgs e)
{
**SPFolder folder = SPContext.Current.ListItem.Folder; **
char[] splitter = { '/' };
string[] folderName = folder.Name.Split(splitter);
string filePrefix = @"Stock Analysis Demo/" + folderName[0] + "/" + folderName[0];
SPFile template = folder.Files[filePrefix + " - Template.docx"];
SPFile file;
byte[] byteArray = template.OpenBinary();
using (MemoryStream mem = new MemoryStream())
{
mem.Write(byteArray, 0, (int)byteArray.Length);
using (WordprocessingDocument myDoc = WordprocessingDocument.Open(mem, true))
{
MainDocumentPart mainPart = myDoc.MainDocumentPart;
foreach (Word.SdtElement sdt in mainPart.Document .Descendants<Word.SdtElement> ().ToList())
{
Word.SdtAlias alias = sdt.Descendants<Word.SdtAlias>().FirstOrDefault();
if (alias != null)
{
string sdtTitle = alias.Val.Value;
if (sdtTitle == "Word:Document")
{
file = folder.Files[filePrefix + " - " + sdt.InnerText + ".docx"];
AddAltChunk(mainPart, sdt, file);
。 在雙星號上的第一行
我已調試並可以獲得一些SPContext方法來呈現信息,它只是沒有「Listitem」是當前的。
我懷疑,帳戶的註釋,即選擇「文檔集」 使得文檔設置當前項目,如果是這樣,之前調用此代碼設置沒有選定文檔的就是爲什麼當前產品空值。
...,此外,文件夾不共享相同的屬性,文檔集,所以僅僅是「開放」的文件夾不會使「當前項目」
這是正確的嗎?
那麼,如何赫克我測試對文檔集我的自定義Web部件代碼,如果我不能遠程連接到實際的網站,我不能在我的開發手提電腦拿到文檔集?
OR ........
選擇一個文件設爲不設置當前項目。那麼什麼是更好的方式來循環通過這個文件夾內的文件?
你的意思是你「之前已經按下按鈕選擇一個項目」?這是什麼類型的網頁,你有你的按鈕? –
我在共享點「共享文檔」庫中。在圖書館我有一個文件夾,在文件夾我有2個單詞文件。我添加了一個web部件W/A按鈕嘗試運行此代碼(同樣,最終比賽是環通所有文檔在這個文件夾級別和合並它們),並推我已經確保了按鈕之前選擇此文件夾中的其中一個文檔。對我而言,這意味着「是最新的項目」。 – jazaddict
順便說一句,這裏是有2個文件....該文件夾內的網址是有一些片這一點,我需要什麼? HTTP://ac4s-porlidesn1/Shared%20Documents/Forms/AllItems.aspx?RootFolder =%2FShared%20Documents%2FBObs%20Folder&FolderCTID = 0x0120005D7C7069F377F746B84A7EFD4DC33DCD&View = {F3637EDF-17A5-4C5A-94E1-C677D261F609}&InitialTabId = Ribbon%2EDocument&VisibilityContext = WSSTabPersistence – jazaddict