WCF Deep Dive (Little Rock) – Wrap Up

Many thanks to all the guys and gals of the Little Rock .NET User Group for having

me in to do the “WCF Deep Dive” for 6 hours today. Despite some challenges from

the lab, we made allot of good headway. I promised the code and slides, so here

they are :

  • Slides

  • Console

    Application in Visual Basic

  • Console

    Application in C# (with ConcreteCalculator corrected)

  • “Wildly

    Chatting Friends” Web Application

Thank you all for putting up with me as I did my first long class, it taught me a

great deal that will shape my future longer training sessionsand I got the impression

most of you learned something. My thanks againto Larry Taylor and the

all those who helped us over our issues with the Lab and Network security.


Sonu Arora has a great
on what exactly the WCF LOB Adapter SDK does and how it relates (i.e. extends)
the capabilities of the normal WCF channel and extensibility model. Her entire blog
is worth checking out if you’ve been wondering just what the fuzz is about, particularly
since now a Release candidate of the SDK has been
made available
to the public.

tags: WCF
LOB Adapter SDK

WCF Line of Business Adapter SDK in ‘RC’ on Microsoft Connect

Sonu Arora, who I had the pleasure of meeting at TechEd this year, has

just posted on her blog that her team has released an RC (Release Candidate) of

the WCF Line of Business Adapter SDK to Microsoft

Connect. In case you don’t know, this is the framework upon which Microsoft

is building their next generation adapters to systems such as Siebel, SAP, and Oracle

Financials. It is based around extracting meta-data from the LOB application,

and works entirely consistently with the WCF channel extensibility model.

If you read my blog and do BizTalk, and even more relevantly do BizTalk and SAP, Siebel,

Oracle Financials or other LOB applications, then you’ll want to look at this.

Post R2 this would be the recommended route to take if you had a LOB application you

needed to integrate with, rather than writing a Custom Adapter. You’d simply

write an LOB Adapter in .NET using this SDK, and then implement with the WCF Adapter

for BizTalk. The benefit there is that the work in the Adapter would be re-usable

to other WCF .NET applications and not tied exclusively to the BizTalk object model.

Address Information

Sometimes the weirdest things come up when testing. I was helping with some

Integration Testing recently, and we needed to submit a new valid postal address with

every request to this system. That’s a hefty load to bear, and certainly if

I were doing Unit Testing I’d be mocking away that system just to not have to deal

with that problem, but for Integration Tests there was no way around it. My

answer? Public data my good friends.

The quest started with Google, as most do, and a search criteria like this :

City State Zip filetype:csv

Which after browsing for several pages I modified to:

City State Zip filetype:csv site:usps.com

That resulted in the CSV which is the source of the data we’re using, a list of Post

Offices across the nation. The list is very long, a total of 19,931 addresses.

Now, it wouldn’t be fair to just list the Google queries here, after all this is a

technical blog. I took the CSV apart, removed the irrelevant fields and parsed

it into an object to hold address data, specifically this object.



              class AddressData


              string _Name;


              string Name
        get { return _Name;

            _Name = value;


              string _StreetLine1;


              string StreetLine1
        get { return _StreetLine1;

            _StreetLine1 = value;


              string _StreetLine2;


              string StreetLine2
        get { return _StreetLine2;

            _StreetLine2 = value;


              string _City;


              string City
        get { return _City;

            _City = value;


              string _State;


              string State
        get { return _State;

            _State = value;


              string _Zip;


              string Zip
        get { return _Zip;

            _Zip = value;

Now if you compile your own version of that code, and create a List<AddressData>

you should be able to Deserialize

this file of all the addresses for your own use.

BTSUG: 4th July (next Wed) WF meet BizTalk, BizTalk meet WF – WCF here!

Wow what a night planned!!! WF 101 (even good for managers! :)); BTS hosting
WF and making it all happen under BizTalk Labs
(that’s next after R2)

Check it out and looking forward in seeing you there……

——– Details ———

Examine Windows Workflow talking to BizTalk R2 and BizTalk Labs.

Firstly a BIG thanks to those that enjoyed the exam cram we did last month (we had
to order additional pizza!) and I’ve since heard that several of you have
sat and passed the EXAM!!! Well done!!

With R2 just around the corner……I decided to tackle the Windows Workflow(WF) question.
The message is usually BTS vs WF, never BTS AND WF.

We’ll cover:

1.      Workflow 101 (you should be able to
bring your manager along to this one J)

2.      Hosting Workflow’s within BizTalk
with the new BizTalk extensions for WF SDK

3.      BizTalk Labs – life after R2….and
where we are heading…..

Meeting details:

When: July 4th Food at 6pm, kick off 6.30pm. Finish up around 8pm.
Where: Microsoft
1 Epping Road
Riverside Corporate Park
North Ryde NSW 2113 Australia.
(parking available)


WF Session Focus Details:
up we will look at the fundamentals of Workflow; what
makes them run;
communications; and how do we host them.

(WF is the technology that is brightly coloured in VS.NET and comes with .NET 3.0)
– you could even workflow your toaster if you wanted to.


2.Next – we’ll take a Workflow and use WCF
under the covers to act as the communication medium between BTS R2 & WF.
So now in BTS R2 we can host WF (through a small ’Orchestration wrapper’) meaning
that when BTS persists, WF does too – WF is now running inside BTSNTSvc.exe.
(cross off the list – ’find a place for my WF’s to live’)

3.Thirdly – Imagine being able to call our creation from anywhere
and behind umpteen firewalls between caller/sender…..enter into the ring
BizTalk Labs!!! Very exciting – labs.BizTalk.net.
(what communications do you think we use…….WCF……hmmm….seems to be a common
thread here!)
So it’s a night on WF/R2 wrapped up in WCF – wow what a great set of technologies!!!!


See you there and let me know your coming
Mick Badran.
p.s. I’ve fallen in love with Microsoft Surface…….wow!!!

WCF LOB Adapter SDK – Public RC…. grab it while it’s hot

What a name….talk about the pinnacle of TLA’s at the height of a great technology
Can you imagine being at work/meetings etc.
and say “Hold on, I’ve got to grab the WCF LOB Adapter SDK for my BTS Messaging

(at this point I’m sure it would clear the floor if you were at a party and people
would be looking at each other thinking that someone hasn’t taken their vitamin B12
this morning)

So we really do need to come up with a sexier name than this (when I was 4 my parents
read me a great book about a kid called “Tikki-tikki-tembo-no-sarembo” and he fell
into the well – you could say I was scared off long names as a kid)

What does this thing do for you? It will change the way you develop adapter
for use with/without BTS.

LOB Adapter SDK


p.s. you don’t necessarily need BizTalk to build adapters with this
framework. There are BTS06 R2 ‘extensions’ to this framework – the BTS ‘strand’ of
this SDK is currently called the BizTalk .NET Adapter SDK

There’s some very cool things ahead…..stay tuned……

BizTalk 2006 R2 comes in a few flavours – which edition is right for you

MS have been busy in this space and we’ve now got the following (or soon will have

  1. BizTalk Server 2006 R2 Evaluation Edition

  2. BizTalk Server 2006 R2 Branch Edition

  3. BizTalk Server 2006 R2 Developer Edition

  4. BizTalk Server 2006 R2 Standard Edition

  5. BizTalk Server 2006 R2 Enterprise Edition

Most are pretty self explanitory except for the Branch Edition (BE) –
for those of you that remember the BTS Partner Edition (phased out
with the introduction of BTS2006), BE is comparable with it.

There are some restrictions on this though (as currently determined by the powers
to be…):
– the BE must connected to Enterprise Edition.
– two or more BE’s can’t talk directly to each other,
must go through a Enterprise Edition

There’s a document available that discusses upgrading to BTS06R2 – it’s still a work
in progress but it’s a good start –

Upgrade Document

In particular there is a great image that gives a good outline of the dependencies
(taken from the document):



Food for thought folks – there’s some very exciting times ahead.

WCF LOB Adapter RC is available now!

Microsoft hasswiftly released WCF LOB Adapter Release Candidate yesterday. This WCF LOB Adapter RC contains SDK , which allows developers to build WCF Adapters integrating .net applications with existing applications and messaging platforms.
Download this adapter SDK and its documentation from Connect site. You can also get more information on the same from BizTalk Server 2006 […]