Событие DeletedPage дает мне неправильную PageLink при очистке мусорной корзины
Я подключил событие DeletedPage в моем Global.asax так:
DataFactory.Instance.DeletedPage += this.Instance_DeletedPage;
И мой обработчик:
private void Instance_DeletedPage(object sender, PageEventArgs pageEventArgs)
{
DeleteCustomerRoles(pageEventArgs.PageLink);
}
Когда я перемещаю страницу в мусорную корзину, ничего не происходит, разумеется, поскольку она перемещается. Когда я удаляю страницу из мусорной корзины - происходит событие, и я получаю PageLink удаленной страницы в pageEventArgs
,
Но... Когда я вместо этого выбираю мусорную корзину и нажимаю кнопку "Очистить мусорную корзину", я получаю PageLink, соответствующий мусорной корзине, а не моей удаленной странице!
Это особенность или ошибка? Я вижу, что есть какой-то список связанных страниц на объекте страницы в pageEventArgs
, но я предполагаю, что все удаленные страницы (даже дочерние) вызовут событие DeletedPage. Разве это не правда?
2 ответа
Хорошо, это похоже на известное поведение:
http://world.episerver.com/Support/Bug-list-beta/bug/33750/
Несмотря на то, что есть параметр, позволяющий изменить некоторые особенности поведения, часть мусорной корзины остается. Я нахожу это действительно странным, но, похоже, мне придется искать в другом месте, чтобы найти обходной путь, чтобы действительно узнать, когда страница удаляется, независимо от того, как.
Кажется, это способ заставить это работать, о котором никто или мы, очевидно, не знали:
Надеюсь, вы найдете эту информацию полезной! /Мартин