Перестал работать С# код раньше работало все отлично

sof

Client
Регистрация
15.04.2013
Сообщения
831
Благодарностей
185
Баллы
43
Помогите разобраться. У меня не корректно стал работать C# код точнее выдает ошибку
Выполнение действия CSharp OwnCode Ссылка на объект не указывает на экземпляр объекта. Версия Zennoposter 5.17.2

Вот сам код который у меня работал корректно ранее.

var chapters_template = project.Variables["name_gl_razdel1"].Value; //подставить свою переменную

var text = instance.ActiveTab.FindElementByAttribute("div", "innertext", "^Разделы:", "regexp", 0).NextSibling.GetAttribute("innertext");
var chapters = Regex.Replace(text, "\\s+", " ").Split('/')[0].Split(',').Select(s=>s.Trim());

return chapters_template.Split('|').DefaultIfEmpty("").FirstOrDefault(ct=>chapters.Any(ch=>ch==ct));

В чем может быть причина? По самому сайту изменений верстки не вижу все тоже самое. Может проблема в Zennoposter?
 

DmitryAk

Client
Регистрация
14.12.2016
Сообщения
860
Благодарностей
824
Баллы
93
Попробуйте так и гляньте на что ругнется.
Код:
var chapters_template = project.Variables["name_gl_razdel1"].Value; //подставить свою переменную

HtmlElement par = instance.ActiveTab.FindElementByAttribute("div", "innertext", "^Разделы:", "regexp", 0);
if (par.IsVoid) throw new Exception("Не найдены Разделы");
HtmlElement textel = par.NextSibling;
if (textel.IsVoid) throw new Exception("Не найден NexSibling от разделов");

var text = textel.GetAttribute("innertext");
var chapters = Regex.Replace(text, "\\s+", " ").Split('/')[0].Split(',').Select(s=>s.Trim());

return chapters_template.Split('|').DefaultIfEmpty("").FirstOrDefault(ct=>chapters.Any(ch=>ch==ct));
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
может на сайте уже не ^Разделы: , а какое-то другое слово, типа Рубрики
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)