SharePoint面试问题

ash*_*rya 54 sharepoint moss wss

让我们列出一些针对SharePoint开发人员的好面试问题.请在每个条目中提供一个问题,如果可能,请提供答案.

此外,如果提供的答案有误,请随时建议更正.

我会先走:

问:SharePoint如何存储页面?

答:如何定位sharepoint-document-library-source-page-on-the-server?

Ada*_*mBT 20

问:使用SPSecurity.RunWithElevatedPrivileges(Web上下文)运行时正在使用哪些凭据?

A.运行SharePoint的Web应用程序的应用程序池标识.

  • 答:当前流程的身份.在Web上下文中,这是应用程序池标识.在计时器作业,控制台应用程序等中,它可能不是应用程序池标识.相应地规划数据库权限 (6认同)
  • 这有点太具体了吗?我喜欢更多开放式问题,允许候选人多说一些,比如原作者的问题:SharePoint如何存储页面? (4认同)

Ada*_*mBT 15

问:修改列表项时,使用SPListItem.Update()和SPListItem.SystemUpdate()之间的"主要"区别是什么?

答:使用SystemUpdate()不会创建新版本,也会保留时间戳.


Mic*_*tum 14

问:什么时候应该处理SPWeb和SPSite对象?更重要的是,何时不是?

答:如果你自己创造它们,你应该总是处置它们,但不是.您永远不应该处置SPContext.Current.Web/Site,如果IsRootWeb为true,通常不应该部署SPWeb.更复杂的构造是SPList.ParentWeb行中的事情.

如果候选人知道Roger Lambs博客文章,可获得奖励积分.

  • 在迭代SPWeb.Webs时也处理每个Web (2认同)
  • 还配置SPLimitedWebPartManager的SPWeb属性(.web) (2认同)

Kyl*_*man 13

问:System.Web.UI.WebControls.WebParts.WebPart和之间有什么区别Microsoft.SharePoint.WebPartPages.WebPart

答:Microsoft.SharePoint.WebPartPages.WebPart在MOSS 2007中提供,以提供与MOSS 2003 webparts的向后兼容性.在MOSS 2007中,建议使用System.Web.UI.WebControls.WebParts.WebPart.

  • 还有一些我想补充的内容:除非您需要以下功能,否则建议使用ASP.NET webpart:Web部件之间的连接Web部件区域跨页连接数据缓存基础结构允许缓存到内容数据库客户端 - 侧面连接 (2认同)

Nat*_*Nat 9

有时我想问更多开放式问题,以便让潜在客户说话.

如果我想找出技术深度

问:您在SharePoint中发现了哪些错误?那么问:你做了什么来解决它们?

  • 是的,非常突出的问题,任何了解MOSS的人,都知道它与坚固的一起,我想MOSS的另一个好的面试问题是,你有强烈的胃吗? (2认同)

Ada*_*mBT 7

问:如果您有ItemUpdated或ItemUpdating事件接收器并且它会导致项目更新,那么如何防止在更新期间触发另一个ItemUpdated和ItemUpdating事件?

A.在执行更新之前,请调用DisableEventFiring().更新后,调用EnableEventFiring().


ahi*_*114 7

问:什么是网站集,为什么要创建新网站集而不是网站?

A.答案很长,但他们应该了解网站收集管理,配额,资产分离,安全模型等.

戴夫沃勒曼(Dave Wollerman)有一篇关于其中一些原因和内容的好文章.


Chr*_*nce 7

问:性能影响是RunWithElevatedPrivileges什么?

答:RunWithElevatedPrivileges使用App Pool的凭据创建一个新线程,阻止当前线程直到完成.

[via rexm ]


Jas*_*n Z 6

问:描述列表和库之间的区别.

答:列表是元数据或列的集合,可以包含附加文档.库是文档集(Excel,InfoPath,Word等)以及可选元数据.

根据ktrauberman的反馈编辑.


Ale*_*gas 6

问:(i)描述内容类型的目的; (ii)举例说明它们的用途.

答:(i)内容类型将一组列表列组合在一起,以便它们可以跨站点以相同的方式重用.(ii)它们可以用作需要应用于网站集中每个文档的一组元数据列.


mor*_*ost 6

问:解释SharePoint如何呈现其内容.答:超出范围,但你可以在这里找到一些好的信息:http://gmac.blogspot.com/2008/04/how-sharepoint-2007-renders-its-content.html

申请人应该至少绕过SharePoint的模板渲染机制,以及12/TEMPLATE/CONTROLTEMPLATES /中的内容以及它的用途,重点是DefaultTemplates.ascx.如果您希望进行任何类型的SharePoint自定义,这绝对是必不可少的知识.


Lar*_*rup 6

问:在MOSS 2007中至少列出两个可用的共享服务

答:MOSS 2007中的共享服务提供商可以提供以下共享服务:

  • 用户个人资料
  • 观众
  • 个人网站
  • 搜索
  • Excel服务
  • 表格服务
  • 业务数据目录(需要企业版)


Jas*_*son 6

问:MOSS和WSS有什么区别

A. MOSS使用共享服务提供商进行搜索,配置文件导入等...(有关更完整的列表,请参阅Lars Fastrup发布答案)

  • MOSS需要花钱,WSS可免费使用Windows Server. (2认同)

Ale*_*gas 6

问:您将如何以编程方式检索列表项?

答:SPQuery和SPSiteDataQuery.了解CrossListQueryCache,PortalSiteMapProvider的知识点.使用foreach的负点.


Jas*_*n Z 5

问:为什么要使用自定义列?

答:它允许您在多个库中重用该列.如果您使用Choice类型将用户输入限制为预定义的答案集,并且该答案列表可能会更改,则特别有用.

  • 当然这是一个"网站专栏",自定义专栏实际上会限制你完全按照你在这里所说的那样做. (2认同)

小智 5

问:事件接收器从哪些基类继承?

A:

  1. SPListEventReceiver,SPItemEventReciever和SPWebEventReceiver继承自抽象基类SPEventReceiverBase.
  2. SPWorkflowLibraryEventReceiver继承自SPItemEventReceiver.
  3. SPEmailEventReceiver直接从System.Object继承.

另请参阅以下网站上的SharePoint问题集:http://qmoss.blogspot.com/

  • Manish,停止在每个答案中宣传您的博客. (4认同)