哪些 SharePoint 开发概念对于 ASP.Net 开发人员来说最难理解?
-
07-07-2019 - |
题
我正在尝试为经验丰富的 ASP.Net 开发人员整理 SharePoint 2007(最终是 2010)培训材料,并且已经使用 SharePoint 多年,我真的不记得一开始最糟糕的症结点在哪里 - 不记得提到 Googlable SharePoint 内容的数量比两年前增加了一个数量级。
也就是说,哪些 SharePoint 概念最难掌握,和/或 SharePoint 的哪些部分非常深奥,对于刚刚涉足的 SharePoint 新手开发人员来说并不明显?
解决方案
格雷格,
根据我的经验,发布与正确的对象处理相关的内容( SPWeb 和 SPSite 对象,而这些对象反过来引用非强制COM的 SPRequest 包装器对象)是常见问题,是许多可伸缩性,性能和其他编码问题的根源。一旦微软意识到问题的规模和开发人员在这方面的混淆程度,他们就写了一篇大型指导文章( http://msdn.microsoft.com/en-us/library/aa973248.aspx )并开发了SPDisposeCheck工具( http://code.msdn.microsoft.com/SPDisposeCheck )。
这是我投票支持“对于刚开始崭露头角的新手SharePoint开发人员不明显”。 : - )
为了它的价值!
其他提示
我列出的最难掌握的事情是:
- 代码访问安全性和所有其他安全功能
- 站点/应用程序页面与自定义/未经定制的页面之间的差异
- CAML在查询和所有定义中
- SharePoint中已经有什么,所以您不会重新发明轮子
放弃控制权。
您无法控制页面上哪些Web零件以及它们如何连接。您应该只是使它们成为可能
您无法控制网站上的哪个列表或它们包含的字段
- 缺乏对多种语言的支持
- 如果您从spcontext。
- 委托控制
其他新的但似乎更容易理解的东西是:
- 解决方案/功能
- 母版页中的所有占位符
*缺乏控制*
这是关键问题,因为 Per Jakobsen提到。继续......
-
无论您在何处,都无法进入并编辑.aspx和.master文件。有一些后果,例如unghosting,支持,并且它通常不会像预期的那样工作。很好地理解SharePoint如何组成页面至关重要。
-
没有(支持且可靠的)直接查询数据库的方法。对于习惯于设计/使用专用和精心设计的数据库的ASP.NET开发人员来说,这是非常令人沮丧的。 CAML查询无法替代优化良好的SQL查询的强大功能。
-
(更多的是2b):对列表之间的关系数据支持不足。对于企业应用程序来说很奇怪。
-
有点偏离主题,但HTML标记和CSS在2003年是一场噩梦,在2007年并没有好多少。使用起来很痛苦,也不是很漂亮。您必须不遗余力地制作完全符合Web标准和最佳实践的网站。
醇>
总而言之,通常需要“SharePoint方式”来完成。这通常不是直接的ASP.NET开发人员更喜欢的最有效或最优雅的方式。开发人员喜欢优雅,他们不喜欢放弃控制。
整个产品也存在问题(肖恩提到了一个关键的一个)像潜伏的小绊网潜伏着毫无疑问。了解和理解它们的唯一方法是了解SharePoint - 它是大型产品。
有关详细信息,请参阅为什么ASP.NET开发人员不使用WSS? 在SharePointDevWiki上。
SharePoint中已有的内容因此您无需重新发明轮子。我为此投票。
Per已经覆盖了大部分关闭点,但是我会添加更多:
-
SPContext - conecptual代码执行的概念,例如事件接收器中的SPContext.Current或Properties对象。
-
从上下文开始,了解代码运行的对象以及可以完成的操作也很重要 - 提升(提升权限),模拟(令牌)和执行(Web服务/事件接收者)
-
错误处理 - 当唯一出现的错误是“发生错误”时,每个人都会尖叫,因此了解SP日志和错误代码至关重要。这对于减少浪费时间追逐激怒的XML错误非常重要。
-
Visual Studio工具 - WSPBuilder,适用于Sharepoint的VS工具等。通过缩短集成周期,减少部署和调试的痛苦。
醇>
使用SQL Server的报告服务创建报告/仪表板以解决实际问题并在sharepoint站点中显示它。在线发现的示例/教程的数量没有这个问题仍然不足(我猜)。
与现实世界架构和实现相关的一切。我是开发人员,但如果我想在我的虚拟环境中尽可能接近客户端环境而不等待官方IT支持,我必须弄清楚。尝试创建一个具有Intranet,Internet,Extranet,混合身份验证机制,备用访问映射,主机头配置等的小型服务器场。这是一项完整的专职工作,但如果您想开发一些中型到大型的实施,您将不得不深入研究。