External List и External ContentTypes передают ошибки персистентности обратно пользователю
Я создал внешний тип контента в моей установке Sharepoint 2010, которая получает свои данные через службу WCF из удаленной базы данных. Я реализовал все операции CRUD без проблем.
Я создал экземпляр списка в Visual Studio 2010 и добавил к нему настраиваемую новую форму, чтобы при выборе пользователем нового элемента при просмотре списка использовалась моя пользовательская форма. Это хорошо работает. Однако, когда пользователь вводит данные для нового элемента и нажимает кнопку Сохранить, мне нужно иметь возможность возвращать пользователю любые ошибки, которые могут возникнуть из внешней системы.
Я не могу понять, как получить событие или дескриптор BDCModel в моем коде позади моей пользовательской формы, которая позволит мне отправить сообщение об ошибке, если, например, истекло время ожидания службы WCF или удаленная база данных для некоторых причина.
Управление объявило, что нам не разрешается использовать формы Sharepoint Designer или InfoPath, чтобы сделать это в Visual Studio.
Может ли кто-нибудь указать учебные пособия для перехвата ошибок, возвращаемых из методов создания и обновления BDCModel, и отправки их обратно пользователю с помощью кода, лежащего в основе моей пользовательской формы, или мне нужно самому реализовать всю процедуру сохранения с помощью полностью настраиваемой формы, которая переопределяет сохранение?
Я бы предпочел не делать этого. Мне также сказали, что я не могу использовать пользовательскую веб-часть для реализации этого с помощью объектной модели клиента, если нет абсолютно никакого способа решить эту проблему с помощью внешнего списка OOTB и пользовательских форм.
1 ответ
Это разрешения (это всегда разрешения) - внутренний пользователь (вероятно, учетная запись пула приложений) не имеет разрешений - проверьте журнал событий системного приложения, а затем журнал безопасности. Журнал SharePoint ULS также может помочь.