我在 Moss 2007 中有一个 Web 部件,它使用 SharePoint API 循环访问给定列表,并将字段值设置为某个预定值。 基本上批量编辑列表。
对于小型列表,Web 部件效果很好。 但是,当我处理包含大量项目的列表时,我会收到内部错误或请求超时。
有没有办法我可以单击按钮,并在后台异步执行操作,以便提交者不必等待操作完成,或者稍后可以取回帖子?
我该怎么做?提前感谢,需要我无法得到的所有帮助。
附言。 项目中没有.aspx页面,只有一个具有 createchildcontrols 和其他函数的直接类。
PSS。 我对服务器本身的web.config或任何类似的事情几乎没有控制权
是否可以生成执行批量编辑的自定义计时器作业,并且 Web 部件只会添加要处理的计时器作业的项目。
如果可以将 Web 服务部署到服务器场,则可以重写 Web 部件,以使用 AJAX 调用 Web 服务来执行工作。
另一种选择是让你的 Web 部件生成后台线程,但我对此选项非常谨慎。 不仅管理线程很困难,而且它们将在 SharePoint 的 IIS 工作进程中运行,从而增加了 Web 部件关闭网站的机会。