我想在SharePoint 2007中使用一些ASP.NET 3.5功能。特别是,我想要执行以下操作:
我主要担心的是IT团队的推迟,他们不想改变他们的SharePoint环境以允许产品运行。所以,我更愿意能够说我正在做的事情是“微软支持”,但我不确定是否会出现这种情况。
我意识到我可以在SharePoint服务器上为为外部应用程序提供SharePoint数据的WCF端点创建一个单独的(非SharePoint)网站。我宁愿不这样做,因为这不会帮助我的网页部分(如果他们需要帮助),这会使部署更加困难。正确的SharePoint部署将自动让SharePoint更新添加到服务器场的任何新Web前端上的所有必需文件(例如,web.config),这不会遵循该模式。另外,我失去了使用SPContext.Current的能力。
我已经阅读了Daniel Larson关于Developing Service-Oriented AJAX Applications on the Microsoft Platform(好读,BTW)的书,特别是。第11章关于扩展SharePoint。他概述了WCF,ASMX和HTTP Handler选项,并且大部分都推荐了HTTP Handler选项。看起来HTTP Handler选项对web.config的修改很少。
我还在SharePoint as a WCF Host,SharePoint 2007 and the Thin .NET 3.5 Development Model,How to: Get up and running with .NET 3.5 in your SharePoint environment和Enabling .NET 3.5 in SharePoint 2007 Sites, the Lazy Way上看到过博客。以及SharePoint 2007 Features CodePlex Project中的“Silverlight(.NET 3.5)配置功能”(甚至可能是“Ajax.Config功能”)。似乎所有这些选项都对web.config进行了一些相当大的改动,并且潜在客户可能无法接受。
对此有何意见?如果我想使用AJAX Control Toolkit(我以前在SharePoint中使用过这个,但它已经有一段时间了)呢?
请注意,如果有帮助,我们可能需要SharePoint SP2,但我认为不会。
另请注意,Silverlight不是SharePoint Web部件的要求,但允许它可能会很好。
答案 0 :(得分:2)
您的第一点可以通过SharePoint Web服务的自定义包装器来解决,它呈现您要呈现的API,而不是通用Web服务。
您的第二点,即已启用AJAX的网页和网页部件已经成为可能 - how to enable AJAX in SharePoint.
答案 1 :(得分:1)
.NET 3.5在SharePoint中受支持(截至SP1我认为),但是你无法摆脱在服务器上进行web.config更改和安装.NET 3.5 - 它可能只会在那里已经使用的AJAX Web部件。
除此之外,您所看到的内容在很大程度上独立于SharePoint - 如果您可以将某些内容构建为aspx页面或asmx Web服务,则应该能够将其部署到SharePoint站点。
如果您想完全避免3.5安装问题,您应该能够构建完全独立的东西 - 用于Web部件的jQuery(不需要服务器端组件)以及从sharepoint获取数据构建可以将调用转换为标准Web的内容服务进入更友好的界面。