我們有一個存檔站點,它是「活動」站點的精確副本,但使用不同的服務帳戶。我已經構建了一個EditControlBlock擴展,將用戶重定向到_layouts文件夾中的一個頁面。該頁面上有一些文字和一個確定按鈕。無法使用SPWeb,數據庫登錄失敗
編輯:我試圖使用的SPWeb是在不同的WebApplication中。我正在嘗試將文件x移動到存檔站點。
當點擊確定按鈕,就應該執行以下代碼:
using (var archive = new SPSite(archiveurl, SPContext.Current.Web.CurrentUser.UserToken))
{
using (var newsArchive = archive.RootWeb.Webs[SPContext.Current.Web.Name])
{
//move file
}
}
奇怪的是,它打破了第2行:using (var newsArchive = archive.RootWeb.Webs[SPContext.Current.Web.Name])
這是奇怪的,因爲第一線確實工作。 我得到的錯誤是:
login failed for user x on database y
任何人有一個想法嗎?源自LayoutsPageBase
的頁面上的代碼是否始終以Web應用程序的apppool帳戶運行?
爲什麼您希望在使用SPContext.Current.Web和Site時使用新的SPSite? – Kusek 2009-08-13 07:49:50
因爲我試圖使用的SPWeb是在不同的WebApplication中。我正在嘗試將文件x移動到存檔站點。 – Colin 2009-08-13 08:23:16