Proceed()
Invokes the logic that has been overwritten. For instance, in an OverrideMethodAspect, calling Proceed() invokes the method being overridden. Note that the way how the logic is invoked (as a method call or inlining) is considered an implementation detail.
Declaration
public static dynamic? Proceed()Returns
| Type | Description |
|---|---|
| dynamic |
Remarks
For async and iterator methods, Proceed() automatically adapts its behavior:
async methods are awaited, and iterators are buffered into a collection. To avoid buffering
or to use await/yield in your template, use the specialized Proceed methods
(ProceedAsync(), ProceedEnumerable(), etc.) in conjunction with
specialized template methods in OverrideMethodAspect or MethodTemplateSelector.