C# 5.0 Async/Await Demo Code
Posted
by Paulo Morgado
on ASP.net Weblogs
See other posts from ASP.net Weblogs
or by Paulo Morgado
Published on Sun, 07 Oct 2012 20:46:37 GMT
Indexed on
2012/10/07
21:38 UTC
Read the original article
Hit count: 671
.NET
|.NET4.5
|ASP.NET
|ASP.NET Web API
|async
|c#
|c#5.0
|CodeProject
|winforms
|wpf
I’ve published the sample code I use to demonstrate the use of async/await in C# 5.0. You can find it here.
Projects
PauloMorgado.AyncDemo.WebServer
This project is a simple web server implemented as a console application using Microsoft ASP.NET Web API self hosting and serves an image (with a delay) that is accessed by the other projects.
This project has a dependency on Json.NET due to the fact the the Microsoft ASP.NET Web API hosting has a dependency on Json.NET.
The application must be run on a command prompt with administrative privileges or a urlacl must be added to allow the use of the following command:
netsh http add urlacl url=http://+:9090/ user=machine\username
To remove the urlacl, just use the following command:
netsh http delete urlacl url=http://+:9090/
PauloMorgado.AsyncDemo.WindowsForms
This Windows Forms project contains three regions that must be uncommented one at a time:
Sync with WebClient
This code retrieves the image through a synchronous call using the WebClient class.
Async with WebClient
This code retrieves the image through an asynchronous call using the WebClient class.
Async with HttpClient with cancelation
This code retrieves the image through an asynchronous call with cancelation using the HttpClient class.
PauloMorgado.AsyncDemo.Wpf
This WPF project contains three regions that must be uncommented one at a time:
Sync with WebClient
This code retrieves the image through a synchronous call using the WebClient class.
Async with WebClient
This code retrieves the image through an asynchronous call using the WebClient class.
Async with HttpClient with cancelation
This code retrieves the image through an asynchronous call with cancelation using the HttpClient class.
© ASP.net Weblogs or respective owner