Last week I gave the best webcast of my life (so far anyway…). All right, so I have only given about 5 webcasts but I keep getting better at this. Here was the interesting challenge. I signed up to deliver a webcast about the Asynchronous Invocation Application Block. Now this block is an interesting piece of work. I like the architecture, however the implementation…well let’s just say that we could have done better (I’m just being honest here).
What I like about the block
- It enforces the concept of Service Agents
- It provides for retry, timeout and cancel of asynchronous requests
What needs to be improved?
- The Quick Start application provides anything but a “Quick Start“
- The number of database calls it makes could easily be reduced
For this webcast I decided to focus on service agents and patterns for using them. Chris Kinsman joined me as a co-presenter which was really great because he has actually implemented this block in a real application. What really made this webcast great though was the code. I spent quite a bit of time creating code that demonstrated the primary use case for this block and in the end it turned out great (and included NUnit tests as well). As of this morning they still have not posted the recording of the webcast but I’m sure it will be there soon. When they get it done you can listen to it here. In the meantime, you can download the code from my home page and take a look. I made a couple of changes (and bug fixes) to the release version of the app block so my demo code will not work with the release version (unfortunate but necessary).