Downloading a blob asynchronously
The Windows Azure Storage Client library provides synchronous and asynchronous versions of nearly all the methods that access the Windows Azure Storage Service.
The asynchronous methods follow the common language runtime (CLR) Asynchronous Programming Model (APM). In this model, asynchronous methods for an action are defined as a pair named BeginAction
and EndAction
. The asynchronous operation is initiated through a call to BeginAction
and is cleaned up by a call to EndAction
. BeginAction
has a parameter that is a callback delegate and EndAction
must be invoked in that delegate.
This apparent complexity can be greatly simplified through the use of a lambda expression to represent the callback delegate. Furthermore, local variables defined in the method containing the lambda expression are available inside the lambda expression. This removes any difficulty caused by a need to pass variables into the delegate. Using a lambda expression, instead of a callback...