Приемник событий Sharepoint не работает - PullRequest
1 голос
/ 21 декабря 2011

У меня есть обработчик событий, который переопределяет метод ItemAdded.Это нормально работает в моей среде DEV, но в моей среде LIVE это не срабатывает.Мне интересно, есть ли что-то не так с тем, как я его настроил.

Класс объявлен так.

public class SitesEventHandler : SPItemEventReceiver {

    public override void ItemAdded(SPItemEventProperties properties) {
        //... code removed.
    }
}

Я добавил обработчик событий так:

SPList sites = web.Lists["Sites"];
sites.EventReceivers.Add(SPEventReceiverType.ItemAdded, "MossServices, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6e99", "MossServices.SitesEventHandler");

Я знаю, что событие было добавлено, но мне интересно, есть ли пропущенный шаг.

РЕДАКТИРОВАТЬ Я обнаружил, чтоон работает нормально, когда я использую его как администратор, но не как кто-либо еще.Должен признать, я подозревал, что это могут быть разрешения.Кто-нибудь сможет сказать мне, почему это работает для системного администратора, а не для менеджера контента?Опять же, есть что-то в настройке, что я должен был сделать?Спасибо

Ответы [ 3 ]

1 голос
/ 22 декабря 2011

Используете ли вы функцию для регистрации обработчика событий? Вы активировали эту функцию?

Или, может быть, вы можете просто использовать SharePoint Manager для регистрации получателя событий

1 голос
/ 18 января 2012

Проблема здесь была не в том, как был зарегистрирован обработчик / получатель события, или в коде в классе.Это была проблема с разрешениями.

Что действительно помогло мне, так это просмотреть журналы, которые Sharepoint пишет: C: \ Program Files \ Common Files \ Microsoft Shared \ Расширения веб-сервера \ 12 \ LOGS

Эта ссылка помогла мне с моимОсобая проблема: http://sharenotes.wordpress.com/2008/03/18/cannot-open-log-for-source-you-may-not-have-write-access/

Надеюсь, это кому-нибудь поможет.Это похоже на грязный хак, но иногда вариант полностью отказаться от системы и повторить годы предыдущих грязных хаков просто не вариант.

1 голос
/ 21 декабря 2011

PublicKeyToken в имени вашей сборки выглядит неправильно.Это выглядит слишком коротким

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...