An interesting scenario came up this afternoon. I receive a bunch of different documents containing address changes, which I map to my canonical “address changes” format in the receive port. I then want to split my canonical document using an envelope so that each address change record is out on its own.


As far as I can see, to do this I’m going to have to write the canonicalised document out to disk, then read it back in from disk and split it in the corresponding receive pipeline. This feels awfully inefficient, but luckily it’s only for a demo system.


I know that the messagebox allows for far more sophisticated subscriptions than are exposed through the User Interface, and obviously orchestrations can subscribe based just on document type, but does anyone know of an equivalent to “The Messagebox” as a receive location transport type?


On a side note, the lack of blogging recently is entirely down to being on holiday, and an addiction to Halo 2 on XBox Live 🙂 If anyone fancies a game, invite me over to your party – the gamertag is “shelfsider”. I’m varying between level 3 and 5 depending on the gamemode, so not too tough an opponent!


Update


Thanks to my colleague Charles and to Berneba (via comments) for the suggestion of using a loopback adapter. In this case it’s probably not going to work as I’m trying to split the document and it’s not clear what I’d receive back into the orchestration.


For the purposes of the demo system I’ll stick with taking a hop onto the disk, but Darren Jefford’s post about looping gives some good ideas – particularly using the little known xpath function.