ASP.NET AJAX部分呈现可以在SharePoint 2007应用程序页面内工作吗?

我的 ScriptManager 和我的 UpdatePanel 有一个简单的页面,我的 ContentTemplate 有一个 ListBox 和一个Label。我只是试图捕获它的 OnSelectionChanged ,所以我可以更新 Label 中的文本。无论我尝试调整什么设置,我都会收到整页回复。

这真的不起作用,或者我只是搞砸了吗?

0
额外 编辑
意见: 1

6 答案

您需要拥有Sharepoint 2007 Service Pack 1 - 否则就没有机会。 (Sharepoint 2007早于ajax 1.0 - 他们在Service Pack 1中提供了一些支持)

接下来,从故障排除的角度来看,测试精确相同的代码在常规asp.net页面中托管时的预期功能。 (将您的代码直接复制并粘贴到新页面中,以排除任何印刷错误)。在问题领域内或在问题领域以外的执政共享点将有助于缩小解决方案空间。

0
额外

获取最新的SharePoint 2007 Service Pack将解决您的问题(并为AJAX添加完全支持)。没有服务包,您需要按照本文中概述的示例进行操作:

AjaxBasePart:Easy ASP.NET 2.0 AJAX扩展1.0和Office SharePoint Server 2007

发布此消息后,即使没有最新的服务包,人们也知道有答案(secretGeek的回复似乎表示没有机会)。

0
额外

Mindsharp的Todd Bleeker向我展示了他写的一段可以在Sharepoint 2.0上使用Ajax的代码。这很酷。如果你想看看,我相信公司在他们的SharePoint站点管理软件上使用它。 (您曾经可以申请30天的试用期)。我敢打赌,如何做到这一点是在他们的雅虎集团(我不记得名字,但我相信,如果你搜索mindsharp你会发现它。)

作为一个说明,Ajax已经存在很长时间了。自2002年以来,微软很容易支持它,因为IE 5.5的发布(我不知道其他浏览器,我正在做内部开发,我们当时只支持)。它只是没有被称为。术语阿贾克斯只不过是稍后有人提出的营销术语。

0
额外

从技术角度来看,Service Pack 1 不会添加对ASP.NET AJAX的完全支持。您仍然需要使用上述答案中提到的各种文章中描述的解决方法。

特别是,您需要确保SharePoint Web应用程序的web.config文件已更新,以支持适当版本的ASP.NET AJAX扩展。

web.config未更新的事实是原始问题中描述的问题的最可能原因。

0
额外

There's a specific problem with mixing doPostback, UpdatePanel and SharePoint -- and the symptom is exactly what you're seeing: a full-page postback instead of an asynchronous postback. See this KB article for a workaround: http://support.microsoft.com/kb/941955

0
额外

如果您安装了SharePoint 2007(不包含Service Pack 1),那么您可以按照以下文章中的示例进行操作:

AjaxBasePart:Easy ASP.NET 2.0 AJAX扩展1.0和Office SharePoint Server 2007

The reason for this is that there exists a specific problem with mixing doPostback, UpdatePanel and SharePoint -- and the symptom is exactly what you're seeing: a full-page postback instead of an asynchronous postback. See this KB article for a workaround: A Web Part that contains an ASP.NET AJAX 1.0 UpdatePanel control that uses the _doPostBack() ...

否则,您可以只安装Service Pack 1来解决您的问题:

Windows SharePoint Services 3.0 Service Pack 1 (SP1)

0
额外