无法使用SPWeb,数据库登录失败

时间:2009-08-13 07:41:59

标签: sharepoint

我们的归档网站是“实时”网站的精确副本,但使用其他服务帐户。我已经构建了一个EditControlBlock扩展,可以将用户重定向到_layouts文件夹中的页面。页面上有一些文本和一个Ok按钮。

编辑:我尝试使用的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帐户运行?

1 个答案:

答案 0 :(得分:1)

我目前在目标数据库上设置了数据库权限。我不得不使源Web应用程序的apppool用户成为目标数据库中db_owner组的成员。不确定这是否可行。任何有更好主意的人都请告诉我。