Things hard and not so hard.... RSS 2.0

Folks - my blog has moved to

# Thursday, 11 October 2012

Hi folks,

What a great time we're in at the moment. Cloud(s) are knocking a the door, local devices, windows 8 etc.

No complaints from me that this world is getting more and more connected.

To maintain those connections and handle new ones - Microsoft BizTalk Server serves as your on-premise middleware platform.

We're running a course shortly on Design, Build and Manage your solutions within BizTalk Server.

We have a wealth of knowledge around Integration and Cloud technologies. As you and I know, integration is all about the systems you're integrating with.

Here's the details - and hope to see you there. Mick (you're new Azure Integration MVP)

Come along to our office for a week of BizTalk 2010 Bootcamp Training!


We will take care of you with delicious catering, friendly staff and provide our state of the art BizTalk trainer. There are a limited amount of seats, so book now!

Click here to register

Start: Monday, November 12, 2012

End: Friday, November 16 2012


What is BizTalk?

For your business, BizTalk provides the "glue" to giving you a very good integration foundation for both internal applications as well as the outside world and giving you consistency across those interfaces as well.

BizTalk is a platform that is durable, reliable and fault tolerant right across your services, from email, FTP services, web services, database calls and much more, you will have something that retries all of those for you.


Why BizTalk?

BizTalk provides a level of maturity to customer operations as well as consistency. It is harder for customers to build themselves, the capabilities that BizTalk can offer out of the box. Our experience is that customers often start out building smaller applications here and there with eventually having over 100 applications talking to each other in a very specific way, all in a very ad-hoc approach and all very speciailised. Over time to maintain those systems becomes a big challenge for the client with increased complexity along the way.

Whereas by introducing a uniform, a best practice way of doing something, "business rules" such as within BizTalk, it eases that integration with the company to make it a lot simpler and easier to manage and everyone gets visibility in to the activity of those calls within the applications.


What our customers are doing with BizTalk today

BizTalk being a middleware product is being used in many different scenarios, from simple file transfers right across to complex business process automation.

Customers in one instance are getting real time notifications around FTP, where certain files appear, then systems have to react or respond immediately instead of within a polling interval that may occur at any time during the day. So being able to build out that infrastructure and apply or update databases, all of that happens right across the BizTalk layer, then exposed out via web services.

In-short BizTalk forms another tool in the client toolkit, using the MS integration stack, so on top of not only BizTalk and all of its' capabilities and adapters, we have WCF (Windows Communication Foundation), messaging, MSMQ and many others in the integration stack, not to mention Azure and cloud hybrid solutions we can deploy and employ today. So with clients it's not just about providing BizTalk to solve a problem, it's about using the tools in the toolkit to meet their requirements, whatever the tools may be, to solve their immediate challenge.

Thursday, 11 October 2012 15:29:10 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Azure | Integration | ServiceBus | 2010 | 2010 R2 | Events | Training
# Thursday, 04 October 2012

In the wee early hours of the morning I recently got an email saying I had been awarded a MVP for another year.

This time I got awarded as an Azure MVP coming from BizTalk MVP. My love has been BizTalk for the last 12 years (and even Site Server before that for those that remember back that far…no they didn’t have punch cards Smile).

As always I don’t feel this is personally my award, but more of an award to you, the community with your hunger and thirst for knowledge to make a difference in your day to day.

And of course thank you to Microsoft for your belief in the MVP program and individuals such as myself.


The formal bits out of the way….I’m back for 2012/13!!! Should be a great year…great tour…and huge developments. Stay tuned.

My focus will be How to Integration and how-to integrate to/from Windows Azure.




Thursday, 04 October 2012 09:49:47 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Azure | Integration | BizTalk | 2010 R2 | BizTalk Adapter Pack
# Tuesday, 18 September 2012

Here's something I go this morning which I think is a SharePoint error:

Tuesday, 18 September 2012 10:53:25 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
SharePoint | 2010
# Sunday, 09 September 2012

Firing up Win2012 Server for the first time you might notice that you can do a

net use * http://mywebsite/docs

Which is a classic thing we do in SharePoint or other WebDAV enabled Servers.

After spending far too long on this issue the secret is to make sure the Desktop Experience feature is installed.

On 2012 here’s the way to do it -

2 hours I’ll never get back Smile


Sunday, 09 September 2012 17:30:15 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Tips | Win2012
# Thursday, 30 August 2012

I recently ran into an interesting one while building some InfoPath forms for SP2010/2013 forms services.

I wanted to return some Rich Text (XHTML) fields back from a WCF WebService call.

I was at the point as a developer, where I couldn’t even say ‘Works on my machine…’.

The problem was – no matter what I tried, I would always have *plain text* and no ‘richness’ of the Rich Text. Didn’t work for me.

So I have:

1) a basic WCF Web service – running on my dev environment.

2) an InfoPath Form that makes the call and displays the results.

The WCF Service:


This is the field that I eventually want to return as RichText to InfoPath.

Here’s the Service Method code (which basically goes into a file and returns back a list of clauses) – just focus on the CONTENT = …GetXHTMLRichText(…)



InfoPath and Returning a RichTextField
2 things need to happen for this to work.

1. When InfoPath adds the WCF Service to the form, it needs to ‘detect’ the field correctly when it build the underlying schema.


You need (nb – ‘Content’ is my field name):
<xs:element minOccurs="0" name="Content" nillable="true">
                <xs:complexType mixed='true'>
                        <xs:any minOccurs="0" processContents="lax" maxOccurs="unbounded" namespace=""></xs:any>


Note the namespace on the ANY element above – this is the winner to tell InfoPath that this is a richtext field.

2. When returning data via this field (in my case the ‘Content’ field), it needs to be in a certain shape, as in:
<Content xmlns=http://yournamespace>
    <span xmlns="">Rich text here</div>

Your rich text content needs to be ‘wrapped’ for InfoPath to play nicely with it.

This was the purpose of my GetXMLRichText method as



The gotcha:

When I pointed InfoPath at my webservice and added a service reference I was getting back a SimpleType for the field and not a ComplexType/Rich Text field.

The WCF Service WSDL was ‘almost there’ but not close enough:

The Content field described in a ComplexType which is almost there, but not quite.

It’s missing the <xs:complexType mixed=’true’>…<xs:any namespace=’’ …/>. The rest were good.

The fix:

Cutting a long story short, the simplest way forward here was to simply edit the form components that InfoPath had built and correct the schema. Then reuse the form.

The form looks like this:



From the File->Publish->Export Source Files you can get to the source and edit the correct schema (XSD) file.

Close the form down in InfoPath (or you may even need to close InfoPath) to edit the Schema.


You may need to hunt through a few of them to find the right one. My file was GetKCCTerms12.xsd

Modify, save and close that file.

Right click on manifest.xsf –> Design to launch InfoPath and then select Save As to work with it as *.XSN form (*.xsn files are just CABs with all these files inside)


The final result as viewed from an InfoPath form – notice the bolding sent through.



Thursday, 30 August 2012 21:25:47 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Dev | SharePoint | 2010 | Tips
# Monday, 13 August 2012

With Hyper-V now available on Win8 it's more important than ever.

VOTE here:

The more votes...the more importance this issue has.

Let's get it in there.

p.s. I'm aware of the 'workarounds' after having to plug 183 usb devices into a virtual environment. Hours I'll never get back

Monday, 13 August 2012 19:59:38 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Dev | General | Tips
# Tuesday, 07 August 2012

Now that the dust is settling after WPC 2012, I’m able to catch up on all the emails still coming from the event.

I had a picture taken with John (against a green screen) and is it’s amazing what they can do with modern technology now. Smile

WPC Award

From my research a couple of points:

  • Over the last 4 years, approx 200 Worldwide Partner awards have been given – 6 of them Australian Partners! We’re one of 6.
  • This is the first time EVER an Australian Partner has been an Application Integration Winner
  • This is the first time EVER an Australian Partner has been a Cloud Partner Finalist

See more here

Talk to you soon.


Tuesday, 07 August 2012 15:10:02 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
BizTalk | 2010 R2 | Breeze | Events | 2012
# Monday, 06 August 2012

Hi folks, BizTalk has some great new features on the horizon and this CTP is jam packed of new and improved features. I believe the CTP is non-public atm, with MVPs etc. able to get access (or if you’re on the TAP program)

I’ve got a VM up and running with the setup and config working a treat – I’m not sure how much I can say, but I’d like to say I’m very pleased with what I’m seeing!

The official feature set blurb goes something like this…



Improved productivity with new Microsoft Platform support

Customers can now leverage the latest and greatest platforms, such as Windows Server 2012 RC, SQL Server 2012, Visual Studio 2012 RC. All new BizTalk projects will target .Net Framework 4.5 RC by default. The CTP also provides support for latest LOB versions enabling customers to use BizTalk for integrating their applications with the latest versions of SAP, Oracle and SQL Server. The new adapters provide a seamless experience to enable hybrid connectivity, all done via configuration. The CTP provides native support for ACS authentication and is extensible for other authentication mechanisms.

·         Platform support

o   Windows Server 2012 RC, Windows Server 2008 R2

o   SQL Server 2012, SQL Server 2008 R2

o   Visual Studio 2012 RC

o   Office 2010

o   Support for latest LOB versions

§  Support for SQL Server 2012

§  Support for SAP 7.2

§  Support for Oracle DB 11.2

§  Support for Oracle EBS 12.1 …

·         Adapters

o   WCF-WebHttp adapter, to consume REST service or expose REST service

o   SB-Messaging, for sending/pulling data from Service Bus Queues/Topics

o   WCF-NetTCPRelay, for hosting relays or sending data to NetTCPRelay end points

o   WCF-BasicHttpRelay, for hosting relays or sending data to BasicHttpRelay end points


Better B2B with schema updates

EDI standards evolve and one of the key investments made in this new BizTalk CTP is to ensure that we support the latest B2B standards natively. This enables you to transact messages based on the latest versions of EDI protocol.

·         B2B enhancements to support latest standards natively

o   Support for X12 5040, 5050, 6020, 6030

o   Support for EDIFACT D06A, D06B, D07A, D07B, D08A, D08B, D09A, D09B, D10A, D10B

o   HL7 2.5.1

We are working on further schema updates such as HL7 2.6, these will be enabled in the BizTalk 2010 R2 Beta.


Improved Performance

The CTP provides performance improvement for certain key scenarios. In case of two way MLLP adapter scenarios where ordered delivery is set, the tests have revealed up-to 5X performance improvement so far in our environments. We have also made enhancements in our engine to improve the performance in ordered send port scenarios.


Building hybrid applications

Today, there is an increase in the adoption of hybrid application scenarios where some components of an application run in the cloud and some other components/LOB applications remain on-premise. It then becomes important to integrate between these components and leverage the richness of both worlds. In this CTP release, we enable hybrid connectivity by providing first class support for integrating with Azure Service Bus Queues/Topics/Relays. We are introducing the following adapters

·         SB-Messaging, for sending/pulling data from Service Bus Queues/Topics

·         WCF-NetTCPRelay, for hosting relays or sending data to NetTCPRelay end points

·         WCF-BasicHttpRelay, for hosting relays or sending data to BasicHttpRelay end points


Integrating with Azure Service Bus entities is now just a few configurations away!


Integration with RESTful services

One of the other prevalent trends in the market today is the proliferation of RESTful services. Almost all new services, as well a lot of services created previously, have a REST interface exposed. For example, all services in Windows Azure, data market place, Salesforce, etc. have support for REST services. With this CTP release, we are making it really easy for you to integrate RESTful services with BizTalk Server using the new WCF-WebHttp adapter. All the REST operations like GET, PUT, POST and DELETE are now supported natively. It gets better. We received community feedback during and post TechEd conference that there should be a way to expose REST services as well from BizTalk. We listened to your feedback. Along with consuming REST services we are also really excited to announce that you now have an early preview to exposing REST services from BizTalk Server as well in this CTP.


BizTalk Server in Azure Virtual Machine role

All the above enhancements are available right away for you to preview with BizTalk Server in Azure Virtual Machine role. Setting up a new BizTalk Server environment usually involves long lead time to procure hardware, get the dependencies in place, set up the server, etc. This means long lead times before you can get started with your new BizTalk Server environment. We are now leveraging the power of the cloud and the richness of Windows Azure to provide an experience where you can get up and running with your BizTalk Server environment in matter of minutes and move your existing applications to the cloud without making any changes. Furthermore, the CTP provide improvements to the BizTalk multi machine configuration and now you can do this using some basic configuration settings with the click of a button in a single machine, without having to go and configure BizTalk Server Group in each of the individual nodes.

Monday, 06 August 2012 12:49:28 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Azure | Integration | ServiceBus | BizTalk | 2010 R2
# Friday, 20 July 2012

Hi guys,


Great opportunity for .Net Developers to join fast growing company


Breeze was recently awarded Microsoft World partner of the Year for 2012 and is looking for 2 .Net developers to work with the latest cloud technologies in Sydney.
(well if you think about it you could use the latest cloud technologies from anywhere, not just Sydney)


Please contact me or visit us at Jobs at – love to hear from you.


(no recruiters please)


Have a great day folks,




Friday, 20 July 2012 12:28:15 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Thursday, 19 July 2012
Thursday, 19 July 2012 11:54:44 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Tuesday, 17 July 2012



Crm looking good Smile

Tuesday, 17 July 2012 10:03:14 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Office 2013


After a bit of hunting on this site I found the x64 bit version under ‘Install Options’



As part of the installation I get:


In which during this time my account is being provision in the ‘MS Cloud’

Almost there….


Tuesday, 17 July 2012 08:15:28 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Office | Office 2013
# Wednesday, 11 July 2012

I am still in shock over this award and are very humbled in receiving it – over 3500+ entries and our story won. Thank you Microsoft, thank you Breeze team and thank you to our great customers in which all of this would not have been possible without you.

Application Integration


Cloud Partner

So today was the day at WPC2012 to receive the award up on stage here in Toronto. Not nervous at all Winking smile seeing we had a 2hr rehearsal yesterday.

What a time has this been so far at my first WPC!!! Compared to ‘techie’ conferences the dress standard is higher, different type of events and some great tech demos that are mind blowing (there was one on the keynote today where a partner had developed software around Kinect that created a 3d model of a person by moving the Kinect camera around the person, their software stitched the images together to produce a 3d model. Then the image/model was fed to a 3D printer and presto…out came the 3D person! Very cool)

So after having a photo down under the stadium we were to come out of I was ready to go….

Waiting in the tunnel:


My View from out in the middle:


Your view of the middle:



So all in all it’s been a great day, great time so far and well worth it. I was then fortunate enough to be invited to a Azure Round table discussion with Satya Nadella (President of Server and Tools) and what a lovely lovely lovely guy. He’s very switched on and a refreshing experience was had with myself and 6 others in the room.

He took away our Azure stories and feedback so let's wait and see what transpires – very inspirational stuff! Thank you Satya.



And I think I the Northern Hemisphere could be affecting me slightly…



More filming tonight and then I can relax!! Open-mouthed smile

WPC Day 2.

Wednesday, 11 July 2012 08:25:41 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [1] -
Azure | Integration | BizTalk | Breeze | Events | 2012 | General
# Saturday, 07 July 2012

After getting tickets to the Mets V Cubs tonight 4 of us decided to go to the baseball. First game and I’m very sketchy on the rules.

What a night!! Great night and I can totally see why you get hooked on it.

Chanting and cheering through the game, a home run hit came our way hit from a Cubs player. I *caught* it(my brother was waiting for a hit all game unfortunately he was off buying food when all this was going on) and had the match ball in my hot little hand.

What to do next? – being my first game ever and not knowing too much about the traditions the whole crowd erupted all around me.

I thought it was just crown banter for catching the ball, it was intense as one half was screaming to keep the ball, the rest throw it back – either way I figured I was done for by someone.
The game was stopped in the meantime…

After conferring with some guys behind me, I ended up throwing it back as to a Mets supporter this indicates that the ball is not worthy of keeping. (The Cub’s supporter reciprocate while at home as well)

What a moment, what a game and what fun. Jane – one of the boys behind me later went and bought me a baseball, as a good will gesture. Thanks Jane that’s very kind of you.

Great fun – what a game.


Saturday, 07 July 2012 14:09:41 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
# Wednesday, 13 June 2012

Hi folks, you've probably heard a fair bit about the make over of Azure into 'Azure 2.0' (the SDK is still 1.7)

There's some great new tools within VS.NET to manage your environment better, even a Service Bus 'explorer' which was much needed.

I've collected a few links to start with for you guys to read up on when you've got a moment:

Azure 2.0 Details on:

Wednesday, 13 June 2012 11:54:11 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Azure | Integration | ServiceBus | Events | Recordings | Tips | Training
# Friday, 08 June 2012

Hi guys, I gave an online presentation earlier this afternoon as part of Microsoft Readiness on Azure Virtual Networks.

I had the whole presentation prepared until the announcement, where I had to go to the drawing board and just share all this goodness that was pouring out in Azure V2.0.

Thanks to the healthy turnout for those online and to those who registered, then check the emails for a link shortly.

As promised here’s the slide deck guys that I used through my demos

Connecting Cloud and On-Premises Applications Using Windows Azure Virtual Network - Breeze_Mick Badran


Friday, 08 June 2012 21:24:57 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Azure | Integration | ServiceBus | BizTalk | Insights | Events | Recordings | Readiness | Training

Now we’re talking….


Off to do some damage…umm play.

Friday, 08 June 2012 07:34:26 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Azure | Integration
# Thursday, 07 June 2012
Thursday, 07 June 2012 23:31:37 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Azure | Integration | ServiceBus

I thought I’d give it a go and see how far this would take me. (One of the Win8 x64 beta installs caused alot of grief)

So my environment:

  • Recent Win8 RC x64
  • Office 2010 x64
  • Outlook 2010 x64

Installed the CRM 2011 Client by going to the web address of our crm site e.g.

There’s a button on page that says ‘download Dynamics CRM for Outlook’ – after a short download and install all went well

I grabbed CRM2011 CU8 - and updated accordingly.

Note at this point CRM plugin had not been configured.

CRM Client Log files prove very helpful here:

When I fired up Outlook and went to configure the CRM Plugin, Testing connection I would get back

“…we can’t authenticate your credentials…

Digging into the log files…..


22:05:18|  Error| Error connecting to URL: Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.IdentityModel, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.IdentityModel, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
   at Microsoft.Xrm.Sdk.Client.ServiceConfiguration`1.CreateLocalChannelFactory()
   at Microsoft.Xrm.Sdk.Client.ServiceConfiguration`1.CreateChannelFactory(ClientCredentials clientCredentials)
   at Microsoft.Xrm.Sdk.Client.DiscoveryServiceConfiguration.CreateChannelFactory(ClientCredentials clientCredentials)
   at Microsoft.Xrm.Sdk.Client.ServiceProxy`1.get_ChannelFactory()
   at Microsoft.Xrm.Sdk.Client.ServiceProxy`1.CreateNewServiceChannel()
   at Microsoft.Xrm.Sdk.Client.ServiceContextInitializer`1.Initialize(ServiceProxy`1 proxy)
   at Microsoft.Xrm.Sdk.Client.DiscoveryServiceProxy.Execute(DiscoveryRequest request)
   at Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo.DeploymentInfo.LoadOrganizations(AuthUIMode uiMode, Form parentWindow, Credential credentials)
   at Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo.InternalLoadOrganizations(OrganizationDetailCollection orgs, AuthUIMode uiMode, Form parentWindow)

Solution: Install the Windows Identity Framework 3.5 that comes with Win8 RC.


And in my case, you’re done.

Happy CRM-ing.

Now to fill in my timesheets Winking smile


Thursday, 07 June 2012 22:27:43 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | CRM
# Monday, 04 June 2012

So we’ve gotten through the final part of our TFS upgrade and as with all new products there’s a sense of anticipation in discovering the new, the brilliant and the clever that’s been baked into these products.

So I’ve offloaded as much as possible such as the DBs, SSRS and Analysis on our SQL2012 cluster, leaving the function of TFS and SharePoint 2010 on the one box.

Here’s my list:

  • TFS source control – tick
  • TFS reporting through SSRS – tick
  • TFS Analytics – tick
  • SharePoint 2010 – tick
  • TFS 2012 – tick
  • Razor? JQuery access? REST API(I’m guessing YES)

Before I embark down the track like the Leyland Brothers I go hit with a very informative message – BOOM

“TF400080: Your system does not have the recommended amount of system memory available: 10 GB. While SharePoint 2010 with Team Foundation Server can operate with less than this amount of memory, the performance will be degraded. Upgrade your system memory to at least the recommended minimum for optimal performance”

Soooo…the old 10GB means it will run ‘better’. I reckon anything in 10GB will run great! SQL supporting 4000 concurrent transactions, etc.

10GB! Run TFS + SP2010 = 10GB (optimal).

I guess for years the ‘recommended guides’ have undersold themselves. This time round, they’re not guilty of that.

Looks to be a great upgrade though.

Cracking on.


Monday, 04 June 2012 16:55:32 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -

I think at the moment, the short answer is no! Off to check the documentation…

”To continue with this installation or upgrade…please remove!…”



From the documentation – we uninstall TFS 2010 bits, but not the DB obviously and you do….

Step 3 Use Control Panel to completely uninstall the previous version of Team Foundation Server. If SharePoint Products is running on a computer other than Team Foundation Server, you have to uninstall the TFS Extensions for SharePoint from the SharePoint server, too. If SharePoint Products is on the TFS application tier, don’t worry: We’ll automatically uninstall the TFS Extensions for SharePoint while we remove the old version of TFS.

Uninstall previous version

Step 4 Run the Team Foundation Server install from the product DVD and then use the Upgrade Configuration wizard to upgrade your installation. But wait—if SharePoint Products is running on a computer other than the computer running Team Foundation Server, you’ll first want to install the new TFS Extensions for SharePoint on the SharePoint server. Similar to the previous step, if SharePoint Products is on the TFS application tier, we’ll automatically install the Extensions for SharePoint while we set up the new version of TFS.

Select upgrade

Monday, 04 June 2012 14:57:24 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | General | TFS
# Thursday, 31 May 2012

Can you imagine developing Apps on your WP7 phone? I couldn’t even begin to contemplate anything of the sort until I saw Touch Develop!!




TouchDevelop is a novel software development environment that lets users write programs for Windows Phone directly on the smartphone, no PC required. TouchDevelop can be used in the classroom to teach programming concepts, and TouchDevelop is also ideal for classes on Mobile Computing, as it cuts the time required to write apps.

University phone loan program

To help students gain access to this revolutionary new programming language and environment, we have set up a loan program, from which you can get Windows Phones for a semester. Please send a short proposal to Give the name of the instructor, the class website, the number of students, and how the phones will be used.


Visit TouchDevelop teaching page at Microsoft Research for a list of how TouchDevelop has been used and is being used in classrooms.

resources for educators
  • book - currently available for free online; systematic introduction to all basic concepts
  • slides - many slides decks going through all aspects of mobile app development with TouchDevelop
  • learn - more documents, videos
in the classroom

Teachers and students should work with actual Windows Phones devices in the classroom — the TouchDevelop user interface was designed around the idea of only using a touchscreen to write code and performing gestures to navigate; using TouchDevelop on an emulator doesn't provide the intended experience. When teaching in the classroom, you can use a webcam or desktop visualizers to project the image of the phone on a big screen. As a teacher, consider subscribing to your students to see what they are publishing and if they are asking questions

Thursday, 31 May 2012 18:25:41 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Windows Phone 7
# Tuesday, 29 May 2012
Finally we get some info on what IP ranges are used for the Data Centers. Now when you have those conversations with the Network security folks and when they ask "What IP addresses are you hitting?", when they want to open up access for Azure Service Bus.

Here's the 'official' IP Ranges (you just hope it doesn't change on works for 3 days of the week, then the 4th it stops...that was an interesting one to solve)

Windows Azure DataCenter IP Ranges

This appeases my grief in a previous post

Tuesday, 29 May 2012 08:25:50 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Azure | ServiceBus
# Monday, 28 May 2012

Hi folks,

We’re looking for someone who loves technology and is currently surrounded by .NET technologies.
Contact us if you want to be part of a great team that sinks their teeth into many different projects, concepts and technologies.

The most important thing I look for is your ‘can do’ attitude, the rest we can essentially learn. Come and be part of a team that loves what they do, and do what they love.
(Makes it easier to get up on these colder mornings Winking smile)

Sydney based.

If you’re interested and want to start the ball rolling -
(I might even get you to leave your CV at home for the interviews Winking smile)

Talk to you soon,


p.s. No agencies please.

Monday, 28 May 2012 18:38:48 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Breeze | Jobs
Huge assortment of scripts for all the family on many many many different jobs....

Note to self: Why didn't I come across this sooner??



Monday, 28 May 2012 17:03:50 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Dev | General | Tips
# Tuesday, 22 May 2012
Hi folks, recently I've been asked by several students on how to create Parties, Agreements, Profiles etc. via code in BizTalk 2010.

I played with this along time ago while at Redmond as BizTalk 2010 was in the process of being released.

So I've just rolled up my sleeves and provided a quick demo for you - the demo shows:
  1. How to enumerate and get at each of your TPM Partners.
  2. How to create Partners + Profiles within BizTalk 2010.
Note: I've only tried this on BizTalk 2010 (& needless to say I'm claiming 'works on my machine' :))

What we're talking about in BizTalk
This section here....

Show me the code....
Well the magic is found in this DLL -
C:\Program Files (x86)\Microsoft BizTalk Server 2010\Developer Tools\Microsoft.BizTalk.B2B.PartnerManagement.dll

- create a VS.NET 2010 app (for this demo I created a console app)
- we make a reference to the above DLL (we also need to reference
- set a connectionstring to our BizTalk Management DB, mine is BizTalkDB (as I rolled all the BizTalk DBs into one - for dev)
- start enumerating.

C# Looks like this-

static void Main(string[] args)
           //enumerate all the TPM Profiles in BizTalk
           var builder = 
               new SqlConnectionStringBuilder("DATA SOURCE=localhost;Initial Catalog=BizTalkDB;"
           + "Integrated Security=SSPI;MultipleActiveResultSets=True");
           var tmpCtx = TpmContext.Create(builder);

           Console.WriteLine("Connected to BizTalk Global Parties");
           var partners = tmpCtx.Partners;
           Console.WriteLine("Number of Parters:{0}", partners.Count());

           foreach (var ptr in partners)
               var profiles = ptr.GetBusinessProfiles();
               Console.WriteLine("{0} Business Profiles:{1}", ptr.Name, profiles.Count);
               foreach (var profile in profiles)
                   Console.WriteLine("\tProfile:{0}", profile.Name);
           if (bCreateProfile)
               createProfile("Breeze Partner #");

Point to Note: in the connection string I set 'MARS=true' just so we can enumerate several collections at once through the one context. When updating or saving new, partners and/or profiles I get errors and can't save through a MARs enabled connection. (love to hear if you have different luck)

Creating a Partner + Profile
// need to do this through a single threaded connection - no MARS
        private static void createProfile(string partnerName)
            partnerName += DateTime.Now.ToString("yyyyMMdd-hhmmss") + (new Random().Next(0, 65535));
            Console.WriteLine("Writing a new Profile for {0}", partnerName);

            var builder = new SqlConnectionStringBuilder("DATA SOURCE=localhost;Initial Catalog=BizTalkDB;Integrated Security=SSPI");
            var tmpCtx = TpmContext.Create(builder);
            var ptr = tmpCtx.CreatePartner(partnerName);
            var pname = "Breeze Profile-#" + DateTime.Now.ToString("yyyyMMdd-hhmmss") + (new Random().Next(0, 65535));
            var bp = ptr.CreateBusinessProfile(pname);
            bp.Description = "Created from Code";
            var pcol = new AS2ProtocolSettings("BreezeProtocolSettings");
And that's pretty much all there is to it folks, have a play around with the APIs for yourself - all undocumented of course.

Here's the Console App Solution I use (built for very demo purposes)


Enjoy Mick!
Tuesday, 22 May 2012 14:45:23 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | BizTalk | 2010 | 2010 R2 | Insights | Tips
# Tuesday, 08 May 2012 – article talks about MS renaming services and essentially dropping the ‘Windows…’ out of it.

My experience has seen this will appeal to the non-MS types that see ‘Windows…’ as something they don’t want to go near.
I personally think it’s a good move as sure it’s Windows but the Azure Platform offers so much more…..

Here’s some of the proposed changes….

Prior Service Name New Service Name
Windows Azure Compute Cloud Services
Windows Azure Platform - All Services All Services
Windows Azure CDN CDN
Windows Azure Storage Storage
Windows Azure Traffic Manager Traffic Manager
Windows Azure Virtual Network Virtual Network
AppFabric Cache Cache
AppFabric Service Bus Service Bus
AppFabric Access Control Access Control
SQL Azure SQL Database
SQL Azure Reporting Service SQL Reporting
Tuesday, 08 May 2012 22:57:37 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Azure | Integration | ServiceBus
# Tuesday, 01 May 2012
Folks, this is Scotty's 2nd presentation this week where he shares is love, scripts and years of experience in Managing Azure Applications (Breeze started back in early 2008).

Tune into this free event and to hear & see what Scotty has on offer.


LIVE Meeting: Managing Windows Azure Applications

Event ID: 1032500972

Language(s):  English.
Product(s):  Microsoft BizTalk Server and Windows Azure.
So you just made your first Windows Azure deployment. Now what? Is it healthy? How many instances do you need? What will my bill be? When do I need to scale up? Was that a DoS attack? Will auto-patching break me? Getting an application into Windows Azure is the first step, now you have to run the application for the next three years. Come to this session and see how to manage and operate your Windows Azure applications.


Tuesday, 01 May 2012 08:51:51 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Events | BizTalk2010 | Recordings | General
Hi folks,

Scotty (aka Sco the Stig) Scovell is presenting this week on

Ten Must-Have Tools for Windows Azure as part of Microsoft Readiness.

We'd love to see you there - free event

LIVE Meeting: Ten Must-Have Tools for Windows Azure

Event ID: 1032500970

Language(s):  English.
Product(s):  Microsoft BizTalk Server and Windows Azure.
Any platform, by its own nature, creates an ecosystem for third-party tools and helpers. Windows Azure is no different. In this session we look at a variety of the third-party tools available in the Windows Azure ecosystem. Included are tools for both developers and IT professionals. We look at tools that will help manage storage and resources, migration, scaling, diagnostics and software components that will help you build cloud applications.


Tuesday, 01 May 2012 08:44:52 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
Integration | ServiceBus | Events | Recordings | General | Training
# Sunday, 01 April 2012

Local MS Developer pillar Andrew Coates spilled the beans on this next new language to come out of MS Research.

Db.NET or ‘D flat’ – F#, C# and the Cinderella of the 3 sisters ‘VB.NET’
(Last year I was introduced to F# over a 5 month project and absolutely loved the simplicity and freshness of it – async was simple, tasks, functions and code that would normally take 400 lines in C#, we were able to do in 100 in F#)

It promises:

- speed

- optimisation (I wonder if it’ll be smart enough to run tasks on different CPU cores?)


There is a focus on Orchestration – data Orchestration found here

Where it talks about “An example of the close collaboration between the product team and the company’s research arm is the use of Schenkerian Analysis in the compiler to maximize orchestration between sections of the code.”

Oooh I thought – let’s check out what this is Schenkerian Analysis and a quick check of Wikipedia reveals

Schenkerian analysis is a method of musical analysis of tonal music based on the theories of Heinrich Schenker. The goal of a Schenkerian analysis is to interpret the underlying structure of a tonal work. The theory's basic tenets can be viewed as a way of defining tonality in music. A Schenkerian analysis of a passage of music shows hierarchical relationships among its pitches, and draws conclusions about the structure of the passage from this hierarchy. The analysis is demonstrated through reductions of the music, using a specialized symbolic form of musical notation that Schenker devised to demonstrate various prolongational techniques. The concept of tonal prolongation, in which certain pitches determine the goal of other, subordinate pitches, is a cornerstone of the pitch hierarchy that Schenkerian analysis involves itself with.”

So tones, pitches and music is where this algorithm has its roots…I can see how you could take this analysis when applied to the frequency of music and apply it to the frequency of code items; data being hit etc.

I’ll crack open this VS.2011 extension and see what transpires…

Grab the TOOLS here -

Sunday, 01 April 2012 20:10:48 (AUS Eastern Standard Time, UTC+10:00)  #    Comments [0] -
.NET Developer | Async
# Wednesday, 14 March 2012

Should be an interesting month this April -

Let’s see what the pricing will be… be great to handle alot of those data sovereignty issues.

It’s like waiting for Santa all over again Smile

Wednesday, 14 March 2012 19:39:28 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | ServiceBus
# Sunday, 11 March 2012

Pretty quick and Win8 is looking pretty slick.

It found all my drivers and in about 15 mins I was up and running.

Let’s see how we go over the next couple of weeks Smile

Sunday, 11 March 2012 23:42:48 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Breeze | General
# Saturday, 10 March 2012

I’m finally back home after a great trip to Seattle and to see some fellow VTSPs from all over the globe. Very switched on bunch.

I was fortunate enough to be asked to present and with Scotty at the demo controls, we steered a pretty good session.

Thanks to ‘all y-all’ whom was in the session and I hope you got as much out of it as I did.

Grab the Public Version of the slide Deck – HERE.

So as promised on the advice of John Brockmeyer here’s some current limitations of the Azure ‘Integration’ Services.

Feature decision making  with Hybrid IT Solutions-Mick_Scott_1

Feature decision making  with Hybrid IT Solutions-Mick_Scott_2

Feature decision making  with Hybrid IT Solutions-Mick_Scott_3

Feature decision making  with Hybrid IT Solutions-Mick_Scott_4

Feature decision making  with Hybrid IT Solutions-Mick_Scott_5

Feature decision making  with Hybrid IT Solutions-Mick_Scott_6

Feature decision making  with Hybrid IT Solutions-Mick_Scott_7

Saturday, 10 March 2012 15:40:35 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | ServiceBus | BizTalk | 2010 | Events

Easy but effective

<script type='text/javascript'>
var msg = "your big title goes here…";
msg = " ..... " + msg;pos = 0;
function scrollTitle() {
document.title = msg.substring(pos, msg.length) + msg.substring(0, pos); pos++;
if (pos > msg.length) pos = 0

Saturday, 10 March 2012 15:12:07 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | Dev | Tips
# Thursday, 23 February 2012

Folks I’ve decided to list some useful links and tips that I’ve come across as part of our work we do. This list will grow and expand as time goes on.

Thursday, 23 February 2012 09:45:08 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | ServiceBus

While currently setting up a BizTalk 2010 developer machine, I’ve got to do a couple of others to do also for the team.

I figured ‘we surely can copy/clone this’ – here’s a handy link for SysPrep and we use files from the BizTalk SDK to work the magic.

Looking forward to it.


Thursday, 23 February 2012 08:09:47 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [3] -
BizTalk | 2010 | 2010 R2 | Insights
# Wednesday, 22 February 2012

Folks, here’s a great page showing which Azure OS and SDK applies to what version.

One to keep handy – get prepared for a v1.7 SDK release

Wednesday, 22 February 2012 07:06:12 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | ServiceBus
# Thursday, 16 February 2012

Hey guys,


Breeze is looking for some keen .NET Developers who have some SharePoint (2007/2010) experience and would like to accelerate their development accessing the latest technologies.

If that sounds like you please visit, we’d love to hear from you.

Keep smiling,


Thursday, 16 February 2012 14:02:44 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Breeze | Jobs
# Friday, 10 February 2012

You know it’s a Friday when…who can spot the ‘yes/no/cancel’ buttons?


Friday, 10 February 2012 11:09:15 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
SharePoint | 2010 | Tips
# Thursday, 09 February 2012

Hi folks, I hope 2012 has been a great start for you as well.

Currently at Breeze I’m after 2 more BizTalk/SharePoint/.NET junior Developers to join a great team.

If you love technology and want to get your hands dirty then we should chat – ideally you’ve got sound .NET development experience and exposure to SharePoint and BizTalk.

We’re also a training company, so we will skill you up in required areas – the thing I’m looking for is a great attitude. The rest can be learnt…

If you want to get into the Software/Systems integrations space and start solving some great puzzles then let’s hear from you.

Here’s the Job Details.

Thursday, 09 February 2012 16:38:41 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Breeze | Jobs | General | Jobs
# Thursday, 02 February 2012

After ranting on a couple of emails today about a particular Azure issue, I’ve popped up a couple of features to vote on.

Add yours now

Thursday, 02 February 2012 17:44:20 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | ServiceBus

With the ever changing Azure space, chances are you’ve had services working a treat and then one day just fail.

“Can’t connect…" etc.

This has happened to me twice this week – with over 14 IP Address ranges defined in the client’s firewall rules.

It appears that my service bus services were spun up or assigned another IP outside the ‘allowed range’.

It gets frustrating at times as generally the process goes as follows:

1) fill out a form to request firewall changes. Include as much detail as possible.

2) hand to the client and they delegate to their security/ops team to implement.

3) confirmation comes back.

4) start up ServiceBus service

5) could work?? may fail – due to *another* IP address allocated in Windows Azure not on the ‘allowed list of ranges’.

6) fill out another form asking for another IP Address…

By the 3rd iteration of this process it all is beginning to look very unprofessional. (in comparison, these guys are used to tasks such as ‘Access to SQL Server XXX – here’s the ports, there’s the machine and done’. Azure on the other hand – ‘What IP Addresses do you need? What ports?’… we need better information in this area)

Anyway – here’s the most update to date list 10/02/2011.

Thursday, 02 February 2012 13:15:07 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | Azure | Integration | ServiceBus
# Tuesday, 31 January 2012

Scotty & myself have had this error going for over 2 weeks now, and have tried many options, settings, registry keys, reboots and so on.
(we have had this on 2 boxes now, that are *not* directly connected to the internet. They are locked down servers with only required services accessible through the firewall)

Generally you’ll encounter this error is you install Azure SDK v1.6 – there has been people that have revert back to Azure v1.5 SDK when this error has been encountered and this seems to fix most of their problems.

Here I’m using netTcpRelayBinding, BizTalk 2010 but this could just have easily have been IIS or your own app.

Finding the outbound ports and Azure datacenter address space is always the challenge. Ports 80,443,9351 and 9352 are the main ones with the remote addresses being the network segments of your Azure Datacenter.

The problem: “Oh it’s a chain validation thing, I’ll just go and turn off Certificate checking…” let me see the options.
(this is what we thought 2+ weeks ago)


Here I have a BizTalk shot of the transportClientEndpointBehaviour with Authentication node set to NoCheck and None (you would set these from code or a config file outside of biztalk)

We found that these currently have NO BEARING whatsoever…2 weeks we’ll never get back.

Don’t be drawn into here, it’s a long windy path and you’ll most likely end up short.

I am currently waiting to hear back from the folks on the product team to see what the answer is on this – BUT for now as a workaround we sat down with a network sniffer to see the characteristics.

Work around:

1. Add some Host Entries

2. Create a dummy site so the checker is fooled into grabbing local CRLs.

Add these Entries to your HOSTs file.    corppki

Download and extract these directories to your DEFAULT WEB SITE (i.e. the one that answers to…..)
This is usually under C:\inetpub\wwwroot (even if you have sharepoint installed)

-------------------- The nasty error -------------------

The Messaging Engine failed to add a receive location "<receive location>" with URL "sb://<rec url>" to the adapter "WCF-Custom". Reason: "System.ServiceModel.Security.SecurityNegotiationException: The X.509 certificate chain building failed. The certificate that was used has a trust chain that cannot be verified. Replace the certificate or change the certificateValidationMode. The revocation function was unable to check revocation because the revocation server was offline.
---> System.IdentityModel.Tokens.SecurityTokenValidationException: The X.509 certificate chain building failed. The certificate that was used has a trust chain that cannot be verified. Replace the certificate or change the certificateValidationMode. The revocation function was unable to check revocation because the revocation server was offline.

   at Microsoft.ServiceBus.Channels.Security.RetriableCertificateValidator.Validate(X509Certificate2 certificate)
   at System.IdentityModel.Selectors.X509SecurityTokenAuthenticator.ValidateTokenCore(SecurityToken token)
   at System.IdentityModel.Selectors.SecurityTokenAuthenticator.ValidateToken(SecurityToken token)
   at System.ServiceModel.Channels.SslStreamSecurityUpgradeInitiator.ValidateRemoteCertificate(Object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
   at System.Net.Security.SecureChannel.VerifyRemoteCertificate(RemoteCertValidationCallback remoteCertValidationCallback)
   at System.Net.Security.SslState.CompleteHandshake()
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
   at System.ServiceModel.Channels.SslStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)
   --- End of inner exception stack trace ---
   at System.ServiceModel.Channels.SslStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)
   at System.ServiceModel.Channels.StreamSecurityUpgradeInitiatorBase.InitiateUpgrade(Stream stream)
   at System.ServiceModel.Channels.ConnectionUpgradeHelper.InitiateUpgrade(StreamUpgradeInitiator upgradeInitiator, IConnection& connection, ClientFramingDecoder decoder, IDefaultCommunicationTimeouts defaultTimeouts, TimeoutHelper& timeoutHelper)
   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)
   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.DuplexConnectionPoolHelper.AcceptPooledConnection(IConnection connection, TimeoutHelper& timeoutHelper)
   at System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout)
   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at Microsoft.ServiceBus.RelayedOnewayTcpClient.RelayedOnewayChannel.Open(TimeSpan timeout)
   at Microsoft.ServiceBus.RelayedOnewayTcpClient.GetChannel(Uri via, TimeSpan timeout)
   at Microsoft.ServiceBus.RelayedOnewayTcpClient.ConnectRequestReplyContext.Send(Message message, TimeSpan timeout, IDuplexChannel& channel)
   at Microsoft.ServiceBus.RelayedOnewayTcpListener.RelayedOnewayTcpListenerClient.Connect(TimeSpan timeout)
   at Microsoft.ServiceBus.RelayedOnewayTcpClient.EnsureConnected(TimeSpan timeout)
   at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)
   at Microsoft.ServiceBus.Channels.RefcountedCommunicationObject.Open(TimeSpan timeout)
   at Microsoft.ServiceBus.RelayedOnewayChannelListener.OnOpen(TimeSpan timeout)
   at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at Microsoft.ServiceBus.SocketConnectionTransportManager.OnOpen(TimeSpan timeout)
   at Microsoft.ServiceBus.Channels.TransportManager.Open(TimeSpan timeout, TransportChannelListener channelListener)
   at Microsoft.ServiceBus.Channels.TransportManagerContainer.Open(TimeSpan timeout, SelectTransportManagersCallback selectTransportManagerCallback)
   at Microsoft.ServiceBus.SocketConnectionChannelListener`2.OnOpen(TimeSpan timeout)
   at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.Enable()
   at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint..ctor(BizTalkEndpointContext endpointContext, IBTTransportProxy transportProxy, ControlledTermination control)
   at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiver`2.AddReceiveEndpoint(String url, IPropertyBag adapterConfig, IPropertyBag bizTalkConfig)".

Tuesday, 31 January 2012 14:08:41 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
AppFabricServer | Azure | Integration | ServiceBus | BizTalk | 2010

Well folks it’s now 2 days after the swim and I’m beginning to feel back to normal.
(I have 2 more swims to go, but this was the big one)

Firstly I’d like to thank all of you whom sponsored me to face the sharks in

‘Jacques Cousteau’ style.


There’s a great video that does a good job of covering the race and the beautiful day we had.

The Race
I got there with a bit of time to spare grabbed my PINK cap + ankle bracelet (which had to be worn on the LEFT ankle, as sharks eat only right ones Disappointed smile )
- The race kicked off at 10am with staggered starts and as it turned out my group 40-49yr males started last!
- I got pretty nervous before the start…I’d kill for a cocktail out the back.
- As the other groups were hitting the water, there were 16yr olds that I reckon would be done before I got out past the break.
- Livesavers were on hand, helicopters overhead and I stuck to my strategy ‘keep at least one other person between you and the ocean’.
- We hit the water and had about 400m around the first marker, and the 40-49s were up for some serious competition.
Elbows, knees, goggles off and I even had someone pull my foot. Anyone would think we’re doing Olympic time trials!!! And this is in the first 200m.
- The swell was up around the point and there was a lot of ups and downs, downs and ups with some guys seeking help from nausea.
- I swam close as I could to the rocks with the pack a good 100m to my left out to sea. I did think ‘Micks' taken the wrong track here’
- What seemed like forever around that headland and surf was up there, I finally rounded the point into Whale beach. (the video has a great shot of this spot)
- Headed for the last marker that I could see way down the other end of the beach.
- Turned and headed towards the only break I could see….caught a wave in – which made it all worth while and came in at 50mins (some people were around 25mins!)
- As I emerged out of the water about to kiss the sand like the pope, my family was literally 1m away right in front!!! Amazing!

It was a great experience with even an 82yr old man doing the swim – puts me in my place.

Thanks all for the support and 2 more to go for me.



Tuesday, 31 January 2012 13:17:08 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
# Sunday, 29 January 2012

Windows Azure cannot perform a VIP swap between deployments that have a different number of endpoints.

Which begs the question – what happens as part of an upgrade if you add-endpoints???

So clearly the VIP Swap operation is not a simple process.

Now off to delete some production instances so I can get the changes through… Disappointed smile

Sunday, 29 January 2012 21:23:24 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | BizTalk
# Thursday, 26 January 2012

Recently there’s been an update to the ‘on-premise’ AppFabric for Windows Server.

Grab the update here - (runs on win7, 2008, 2008R2)

What’s new

I’m in the process of updating my components, but the majority of updates seems to be around caching and performance.



This allows a backend provider to be used on the cache servers to assist with retrieving and storing data to a backend, such as a database. Read-through enables the cache to "read-through" to a backend in the context of a Get request. Write-behind enables updates to cached data to be saved asynchronously to the backend. For more information, see Creating a Read-Through / Write-Behind Provider (AppFabric 1.1 Caching).

Graceful Shutdown

This is useful for moving data from a single cache hosts to rest of the servers in the cache cluster before shutting down the cache host for maintenance. This helps to prevent unexpected loss of cached data in a running cache cluster. This can be accomplished with the Graceful parameter of the Stop-CacheHost Windows PowerShell command.

Domain Accounts

In addition to running the AppFabric Caching Service with the NETWORK SERVICE account, you can now run the service as a domain account. For more information, see Change the Caching Service Account (AppFabric 1.1 Caching).

New ASP.NET Session State and Output Caching Provider

New ASP.NET session state and output caching providers are available. The new session state provider has support for the lazy-loading of individual session state items using AppFabric Caching as a backing store. This makes sites that have a mix of small and large session state data more efficient, because pages that don't need large session state items won't incur the cost of sending this data over the network. For more information, see Using the ASP.NET 4 Caching Providers for AppFabric 1.1.


You can now enable compression for cache clients. For more information, see Application Configuration Settings (AppFabric 1.1 Caching).

Multiple Cache Client Application Configuration Sections

A new dataCacheClients section is available that allows you to specify multiple named dataCacheClient sections in an application configuration file. You can then programmatically specify which group of cache client settings to use at runtime. For more information, see Application Configuration Settings (AppFabric 1.1 Caching).

Thursday, 26 January 2012 10:14:06 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | AppFabricServer | Azure | Integration | 2010 | 2010 R2 | Dev
# Monday, 23 January 2012

Hi folks, welcome to Monday…so I thought.

Here I was registering a message inspector which should take 5 mins tops.

Find the right config, make sure the .NET full assembly name is cool and away we go.

I wanted to use this guy from my custom WCF Adapter within BizTalk – so I needed my new message inspector to be seen by BizTalk.

So I used:

<add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"/>

and added this guy to the <behaviorExtensions> element in the Machine.Config for .NET 4.0 x64/.NET 4.0 (& .NET 2.0 for good measure)

As if a scene from SpongeBob,… 3 hours later….

I had triple check GACs, caches, full assembly names etc…Scotty popped his head around and said “Oh yeah I had this one ages ago you need to use this…”

<add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour, Breeze.WCF.Extensions, Version=, Culture=neutral, PublicKeyToken=c2c8c7e827e9dd6a"/>

Can you spot the difference?


Interestingly enough – this work is part of a .NET plugin I wrote for IIS 7.5 and to register the plugin you use “Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"


My head hurts for a Monday…

Hopefully you reclaim the hours I’ve lost here.


Monday, 23 January 2012 16:52:20 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
.NET Developer | 2010 | 2010 R2 | Dev | .NET Framework 4.5
# Tuesday, 17 January 2012

Just came across this one – Microsoft of recently released the Storage Client source code.

Could come in handy!



Tuesday, 17 January 2012 15:45:19 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
Azure | Integration | BizTalk | 2010 | 2010 R2
# Wednesday, 11 January 2012

Hi folks, we’ve set a cracking pace into 2012 and are in need of an additional team member.

If you love technology, we love technology and I’d love to hear from you to be part of my team.

You will be stimulated, constantly thinking and challenged – azure, integration, biztlak, sql, windows phone 7 and many other technology areas you’ll be exposed to. Integration is all about the glue we use to achieve the result.

If you’re keen for a chat check out the blurb -



Wednesday, 11 January 2012 23:32:16 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
AppFabricServer | Azure | BizTalk | 2010 | Breeze | BET | Dev | General | Jobs
# Monday, 09 January 2012

Thought I’d start off the year with a bang around Azure and what’s been happening in the land of Integration.


So I contacted a Conor Brady to see what was cooking.


The user group is meeting next Thursday 19th Jan 2012.


Here’s the blurb…..




'Integration using Windows Azure Application Integration Services'

Local Integration & Training guru Mick Badran CTO at Breeze Training & Consulting and veteran BizTalk Server MVP will present on 'Integration using Windows Azure Application Integration Services'

The presentation will show how to use Microsoft Windows Azure to be the cornerstone of your integration strategy, whether it’s a small piece or larger deployment. Find out what new tools you can use to extend your existing toolbox and the best way to use them.

This session will cover:

- Strategies on complementing your on-premise <-> cloud integration and what tool to use when.

- High availability solutions with a demo of fault tolerance.

- Casting an eye what’s around the corner to new features coming out of Azure Labs such as EAI, EAI Bridges, EDI – azure style and new XML over HTTP endpoints.




Here’s the link to REGISTER -


See you there!



Monday, 09 January 2012 15:18:16 (AUS Eastern Daylight Time, UTC+11:00)  #    Comments [0] -
AppFabricServer | Azure | Integration | BizTalk
<2017 March>
 AppFabric CAT
AppFabric Windows Server Customer Advisory Team - New Blog.
[Feed] BizTalk 2006 - Windows SharePoint Services adapter
BizTalk 2006 Sharepoint adapter!!
 Breeze SharePoint 2010 Bootcamp
Breeze SharePoint 2010 Bootcamp
[Feed] BTS 2006 R2/EDI
[Feed] Chris Vidotto (MS BTS Legend)
Needs no intro....
 Mark Daunt
About the author/Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2017
Sign In
Total Posts: 608
This Year: 0
This Month: 0
This Week: 0
Comments: 270
All Content © 2017, Breeze