我創建了一些代碼以編程方式創建列表項。現在我想將一個文件附加到列表中。我收到了401錯誤:未經授權。我已經設置了用於創建項目但不附加文件的憑據。有任何想法嗎?SP 2010附加文件客戶端對象模型
Dim credentials As New System.Net.NetworkCredential(MyUser, MyPassword, MyDomain)
Dim SiteUrl As String = MyUrl
Dim clientContext As New ClientContext(SiteUrl)
clientContext.Credentials = credentials
Dim list As List = clientContext.Web.Lists.GetByTitle(MyList)
Dim itemCreateInfo As New ListItemCreationInformation()
Dim listItem As Microsoft.SharePoint.Client.ListItem = list.AddItem(itemCreateInfo)
listItem("Title") = "Test Programmatically Create Item"
listItem("Subject") = "TEST"
listItem("Class") = "101"
listItem("Section") = "20"
listItem.Update()
listItem.Update()
clientContext.ExecuteQuery()
Dim fStream As Stream = File1.PostedFile.InputStream
Dim attachmentPath As String = String.Format("/{0}/Lists/{1}/Attachments/{2}/{3}", MySite, MyList, listItem.Id, MyFileName)
'-- This Line Fails with the following error
'-- The remote server returned an error: (401) Unauthorized.
Microsoft.SharePoint.Client.File.SaveBinaryDirect(clientContext, attachmentPath, fStream, True)
我知道設定的憑據是正確的,因爲如果我不設置這些話,我得到這個錯誤試圖創建列表項。
任何想法都不勝感激,或者如果有更好的方法將文件附加到列表項目,請讓我知道。
謝謝!
調整網址後,我能夠得到更遠的距離,但是現在當我嘗試上傳時出現(409):confict錯誤。如果我首先將一個項目附加到列表中,然後運行代碼,則所有其他項目都將被附加。可以通過編程方式添加附件之前首先需要通過SharePoint添加項目的任何想法? – Greg 2010-09-15 16:44:30
我將您的未註冊帳戶合併到您的註冊帳戶中。您現在可以完全控制這個問題,包括能夠在答案下留下意見等。我根據您收到的答案將您的答案轉換爲評論。 – 2011-09-06 19:05:25