Добавление MonitoredItems в уже существующую подписку не работает - PullRequest
0 голосов
/ 18 декабря 2018

Я выполняю некоторые упражнения с пакетом OPCFoundation.NetStandard.Opc.Ua.

Я успешно создал сеанс против Kepserver EX 6 и создал подписку с несколькими элементами MonitoredItems с использованием тегов Random.Обработчик уведомлений запускается, как и ожидалось, и я могу получить значения, качество и т. Д.

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

Пример кода для добавляющей части:

Session s = Program.s;
List<Subscription> subs = s.Subscriptions.ToList();
Subscription sub = subs.FirstOrDefault();
var m = new MonitoredItem(s.DefaultItem) { DisplayName = displayName, StartNodeId = startNodeID };
m.Notification += handler;
sub.AddItem(m);

Я что-то упустил?

1 Ответ

0 голосов
/ 19 декабря 2018

Вызовите ApplyChanges () для подписки после завершения добавления, удаления или изменения отслеживаемых элементов.

...