What is the difference between these possibilities to raise an event in C#?

141 views Asked by At

Imagine an event

private event EventHandler SampleEvent;

which should be raised. I know 3 ways to do this, but I don't get the difference between two of them which are

SampleEvent(this, EventArgs.Empty);

and

SampleEvent.Invoke(this, EventArgs.Empty);

What is the difference between those two and what advantages and disadvantages does either method have?

1

There are 1 answers

0
Ondrej Janacek On BEST ANSWER

Since event is represented by a delegate internally, Invoke method is present there. Omitting it in calling is just a compiler trick to have a more readable code.