Отображение сообщения об успешном завершении работы пользователя в библиотеке документов SharePoint после проверки в событии ItemAdding

При проверке документа в событии ItemAdding есть много способов отобразить ошибки для пользователя, но, похоже, нет способа отобразить успехи для пользователя, как проверка прошла успешно. Информационное сообщение для пользователя в верхней части библиотеки документов было бы здорово.

public class MyItemEventReceiver : SPItemEventReceiver {
    public MyItemEventReceiver() {}
    public override void ItemAdding(SPItemEventProperties properties) {
            // Do some validation
            // If successful display message to user - can't seem to do
            // If unsuccessful cancel and go to the error page - easy
        }
    }
}

2 ответа

Решение

В обработчике событий у вас есть свойство с именем Cancel, когда оно установлено в true, оно перенаправит вас на страницу ошибок. Принимая во внимание, что, когда вы не распространяете его, он будет перенаправлять вас на страницу метаданных документа, то есть будет так же, как вы для Имени и Заголовка документа. Как говорится, из коробки невозможно заархивировать то, что вы хотите сделать. Один альтернативный подход, который я хотел бы предложить, состоит в том, что, как только проверка прошла успешно, установите флажок в Session / Property Bag списка с ключом GUID документа в качестве ключа, а на странице Final Landing разверните пользовательскую веб-часть, которая будет проверять наличие GUID, и если есть значение, то он будет отображать сообщение.

Хм... отредактируйте AllItems.aspx в List или отредактируйте свою мастер-страницу, добавьте к ней элемент управления Literal. В событии ItemAdded просто обратитесь к этому элементу управления и установите его значение.

Возможно, вам даже понадобится код для этой мастер-страницы. Обратитесь сюда.

Другие вопросы по тегам