Using async keyword in windows runtime components

history edit

C#, UWP, async/await

Creating a background task for a UWP app requires a Windows Runtime Component as host
(for out-of-process background tasks). Among the limitations for creating Windows Runtime Components is the inability to expose Task and Task<TResult> as part of the signature of a public method.

i.e.

To get around this, the async method needs to be changed from public to internal/private (depending on local scope) and a public wrapper method provided.