C# 中的 SharePoint 开发 + 处理错误的最佳方法

标签 sharepoint

过去一年,我一直在 SharePoint 2007/2010 中开发页面和 Web 部件。我总是在我的代码中加入的一件事是 try/catch 块来处理抛出异常时的错误处理。这样,如果我的 Web 部件损坏,我会在该特定 Web 部件中向用户显示一条很好的错误消息,而不是在页面顶部或整页错误。我对这个过程很好,但我正在寻找关于我使用 try/catch 块的方法的一些输入(据我所知,这可能会影响性能)。

通常,在进行 DB 或 Web 服务调用时,我总是使用 try/catch 块。如果实现了复杂的逻辑(并且我无法测试所有不同的情况),我有时甚至会将我的通用 C# 代码包装在 try/catch 块中。有时,我只是有点偏执,我会用 try/catch 将所有代码包装在整个 Web 部件中。

我能否获得一些关于将 try/catch 块用于一般 C# 开发,特别是 SharePoint 世界中的 C# 开发的反馈?此外,我很想了解如何在开发 SharePoint 解决方案时有效地将 try/catch 嵌入到我的 C# 代码中(是否有更全局的方法来做到这一点?)

提前致谢。

最佳答案

通过 SharePoint 世界中的错误处理,您通常会关注性能。如果您担心性能,您会希望尽可能让异常冒泡。我通常用 try/catch 块包装“入口”方法。例如,asp.net 表单中的事件处理程序、Web 部件、用户控件等。然后当我想抛出自定义异常类型、自定义错误消息等时,我会将代码包装在实用程序、数据访问等中。

不幸的是,我还没有找到一种全局方式来处理 SharePoint 中的错误。我已经为传入“this”和异常对象的 Web 部件执行了 HandleError 实用程序方法。 (WSPBuilder 扩展 web 部件项实际上有一个很好的内置实现。)不过,try/catch 块本身仍然是 web 部件事件处理程序的本地。

关于C# 中的 SharePoint 开发 + 处理错误的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3373567/

相关文章:

VBA 跟踪文件使用情况

c# - 如何以编程方式将事件接收器附加到 SPList?

asp.net - 无法在 WSS 下运行的 aspx 页面中设置断点

sharepoint - 您如何指示 SharePoint 场在特定服务器上运行计时器作业?

c# - 无法加载文件或程序集 Microsoft.Office.SharePoint.Tools

Javascript 小部件在 Sharepoint Web 部件中不起作用

sql - 更改 SharePoint 列表的主键?

sharepoint - 如何获取 Web 应用程序中的所有网站集

javascript - 如何使 ExecuteQueryAsync 的行为更加同步?

jquery - 我的 jQuery CDN url 正确吗?