Я собираюсь предположить, что вы используете объектную модель SharePoint, а не ее веб-службы, поскольку вы не указали, какой, а объектная модель обычно используется, поскольку она предоставляет больше функциональных возможностей.
SharePoint использует свой собственный класс SPException для создания исключений, а также несколько стандартных классов исключений .NET. К сожалению, в документации SDK не указано, какие методы генерируют исключения и когда это может произойти. Ваш собственный опыт и Reflector лучше всего подходят для изучения этого.
При первом обучении вы, вероятно, будете вызывать исключения довольно часто, и может быть весьма непредсказуемо знать, когда и почему это происходит. Те, которые выбрасываются SPException, обычно содержат полезные сообщения, однако стандартные исключения .NET, которые также выдает SharePoint (например, ArgumentOutOfRangeException), дают очень мало деталей. Поэтому, чтобы помочь в отладке, как правило, рекомендуется держать ваши методы короткими и точными, чтобы было легко найти причину возникновения исключения. Вам нужно только проверить их, если есть веская причина, чтобы позволить им всплыть, если вы не можете перебрасывать и добавлять больше деталей (, предложенный Питером ), - это хороший подход для обеспечения правильности и поддержания вашего кода чистым. .
SharePoint обычно не регистрирует автоматически исключения. Иногда вы можете найти их в файлах ULS (a.k.a. Trace Log) , но, как правило, при регистрации они не дают больше информации, чем исключения, которые вы можете поймать самостоятельно. Есть много вариантов настройки собственной регистрации, как уже упоминалось здесь. Вы также можете найти отличный список на SharePoint Dev Wiki .