如果我想在 SharePoint 上放置表单,使用 InfoPath 或在 C# 中构建自定义 Web 部件更容易吗?我应该考虑其他选择吗?
每个选项的要求和障碍是什么?
如果我想在 SharePoint 上放置表单,使用 InfoPath 或在 C# 中构建自定义 Web 部件更容易吗?我应该考虑其他选择吗?
每个选项的要求和障碍是什么?
使用 InfoPath 构建表单绝对是在 SharePoint 中发布表单的最简单方法。请注意,它有很多限制,您可能会发现自己试图放置一些有问题的逻辑或需要额外的功能。
使用 C# 进行编程需要 C# 知识(当然)和 SharePoint 的 API 知识。此外,一旦完成,生成的 DLL 必须由 SharePoint 发布和信任,这需要系统管理员的干预。这可能并不总是对您可用,并且在您下次尝试升级 SharePoint 时可能会出现问题。
最后,我建议尝试通过使用 SharePoint 的内置功能来完成大部分工作(包括表单)。如果您深入研究一下,您会发现您实际上可以通过自定义列表的视图、排列字段的顺序、添加您自己的列(和站点列)等来构建复杂的应用程序。这种方法是纯粹的 SharePoint。不需要额外的知识(和人员)。
实际上,您不需要太多的 SharePoint API 知识即可创建自定义 Web 表单。这是一个非常直接的过程;我手边没有任何链接,但应该有不少“hello world”示例可以帮助您入门。SharePoint Web 部件的棘手部分是如何最好地调试和部署它们。
我认识一些顾问,他们在他们的笔记本电脑上本地运行一整套虚拟服务器,以便他们可以使用所有东西。这不是我的选择。我的小组使用 System.Web.UI.WebControls.WebParts.WebPart,因此我们可以在部署到我们的开发环境之前进行本地测试。请注意,如果您走这条路,则无法在本地进行完全测试,因为您将丢失一些 SharePoint 元素,例如样式表和系统提供的 Web 部件。至于部署,我们仍在研究细节。您可以手动执行此操作,但它不适用于锁定的生产环境。一种审查方法是“特征”;它看起来很有希望作为单个安装程序应用新的增强功能,尽管我不确定您如何处理它的错误修复。
您能否更具体地了解表单和共享点版本?
这取决于您的 Sharepoint 版本:如果您有 2003,如果您想使用 InfoPath,它也必须安装在客户端上。在 SharePoint 2007 上,我认为它不是必需的。
如果它是一个没有业务规则的大型表单,InfoPath 可以是要走的路 -> 所见即所得,并且易于部署。
如果您的表单涉及更多业务规则,则 _layouts 中的 Web 部件或页面可以“更简单”且更易于维护。
Infopath 擅长快速构建表单并将它们扔到 Sharepoint 上。我希望它比构建自定义 C# 应用程序快 1000 倍。
这可能取决于您的想法
例如,1. 如果您试图将控制权交给最终用户以便自己自定义表单,您可以选择 Infopath。
Infopath 非常容易理解、开发。为了使用 infopath,您必须学习 Infopath、Infopath Form Services 和 Sharepoint api 来整合 Dotnet (C#) 和 Sharepoint。