Мой сайт sitecore подписывается на событие OnSave изменения контента. Когда я вхожу в диспетчер контента и меняю любое из полей, событие успешно запускается на веб-сайте. Теперь я пытаюсь сделать то же самое, кроме запуска этого события из автономного консольного приложения.Событие Trigger Sitecore programatically
Код ниже изменяет содержимое, и я могу видеть изменения на веб-сайте, но событие OnSave не запускается. Контекст редактирования не является тихим, поэтому он должен запускать событие, но это не так.
Я также проверил базу данных котировки событий, и новое событие создается, но его просто не запускают в Интернете. Кто-нибудь знает, почему событие не запускается?
Pipeline.Start("initialize", new PipelineArgs(), true);
// get database
string domainUser = @"sitecore\admin";
if (Sitecore.Security.Accounts.User.Exists(domainUser))
{
Sitecore.Security.Accounts.User user =
Sitecore.Security.Accounts.User.FromName(domainUser, false);
using (new Sitecore.Security.Accounts.UserSwitcher(user))
{
var db = Factory.GetDatabase("master");
Item ii = db.SelectSingleItem("/sitecore/content/Home");
using (new EditContext(ii, true, false))
{
String current = ii.Fields["Breadcrumb Title"].Value;
Console.WriteLine("Current value: " + current);
current += " e";
Console.WriteLine("Changing to: " + current);
ii.Fields["Breadcrumb Title"].Value = current;
}
}
}
Я пробовал использовать Item.Editing, и это не помогло. «В Интернете» я имел ввиду сайт. Прямо сейчас я работаю в среде dev, поэтому мы используем sitecore master (ничего не опубликовано). И консольное приложение работает на том же компьютере, что и – webber
Хорошо. Ну, я думаю, подсказка тогда была бы, это не похоже, что вы используете Sitecore в любом «обычном» виде веб-контекста. Причина, по которой я говорю это; вы делаете Console.WriteLine для своих целей отладки. Я помню, как читал некоторые сообщения о том, как заставить Sitecore работать за пределами традиционного HttpContext (для тестирования и издевательских целей), но все методы, которые я видел, сильно меняют возможности Sitecore. Я бы не ожидал, что нормальные события Sitecore будут запускаться и функционировать, как вы обычно ожидали, если они выполнялись в контексте этих методов. –
Можете ли вы поделиться какой-либо информацией о настройке среды разработки? Если так, я, возможно, смогу помочь дальше. –