Event subscription

Questions regarding the use of the .NET SDK 2.0 for Server or Client development or integration into customer products ...

Moderator: uasdknet

Post Reply
glawi00s
Full Member
Full Member
Posts: 7
Joined: 01 Apr 2016, 12:04

Event subscription

Post by glawi00s »

I have set up a subscription for newEvents and has also defined a filter like:

ItemEventFilter eventFilter = new ItemEventFilter();
eventFilter.SelectClauses.Add(BrowseNames.AckedState);
eventFilter.SelectClauses.Add(BrowseNames.ConfirmedState);
eventFilter.SelectClauses.Add(BrowseNames.Time);
eventFilter.SelectClauses.Add(BrowseNames.Severity);

I have added the filter to the monitored item as well.

In the Subscription_EventHandler I print the EventsFields to text file.

My question is are the results in EventFields in the order that I defined them in the filter?

My Subscription_NewEvent hndler looks like this:

private void Subscription_NewEvents(Subscription subscription, NewEventsEventArgs e)
{
try
{
if (
_subscriptions.TakeWhile(t => !Objects.ReferenceEquals(_subscriptions[0], subscription))
.Where((t, i) => i == _subscriptions.Count)
.Any())
{
return;
}

foreach (NewEvent newEvent in e.Events)
{
for (int i = 0; i < newEvent.Event.EventFields.Count; i++)
{
if (newEvent.Event.EventFields.Value != null)
{
s += newEvent.Event.EventFields.Value.ToString().Trim() + ",";
}
else
{
s += ",";
}
}
s = s.Remove(s.Length - 1);

s += Environment.NewLine;

using (System.IO.StreamWriter file =
new System.IO.StreamWriter(@"c:\temp\textfile.txt", true))
{
file.WriteLine(s);
}
}
}
catch (Exception ex)
{
var a = ex;
throw;
}
}

User avatar
Support Team
Hero Member
Hero Member
Posts: 3064
Joined: 18 Mar 2011, 15:09

Re: Event subscription

Post by Support Team »

Yes, the EventFields are sent in the same order than specified in the SelectClause.
Best regards
Unified Automation Support Team

sudhapc
Hero Member
Hero Member
Posts: 28
Joined: 16 Oct 2018, 12:47

Re: Event subscription

Post by sudhapc »

How do you mock this event using Moq ?

Post Reply