Store Enterprise Library Config in SSO

Topics: Bindings File, Settings Management and SSO, General Questions, Tips and Tricks
Mar 18, 2013 at 4:11 AM
Hi, was wondering if anyone has used SSO to store Enterprise Lib config. If so what is the general approach?

Failing that, is there a way to automatically update the BTNTSvc.exe.config using BTDF to save a manual update of that config on multiple servers?


Mar 18, 2013 at 7:39 AM
The ESB Toolkit actually ships with an SSO EntLib Configuration Source which basically does what you're saying -- for EntLib 4.1. When you configure the ESB Toolkit with its configuration tool you can choose File Configuration Source or SSO Configuration Source. Unfortunately the ESB Toolkit also changes machine.config to expect EntLib 4.1. You could probably use that as a starting point (if no one has already done it on CodePlex, etc.) to create one that meets your needs. I'm not sure if the source code for that is in the ESB Toolkit source ZIP. If not you could disassemble it with .NET Reflector, etc. The problem with storing the config in SSO is the lack of any management tools, so you might have some custom work to do.

As for the other alternative, you can use MSBuild tasks to update the config file(s) [x86 and x64]. The BTDF has a task whose source code you could use as a starting point: Tools\BuildTasks\DeploymentFramework.BuildTasks\UpdateBTSNTSvcExeConfigBase.cs. If you are using BizTalk 2010, you could use the XmlPeek and XmlPoke tasks built into MSBuild 4. For older versions of BizTalk, the Deployment Framework already includes the SDC Tasks library which includes a couple of XML tasks. Since this is just regular old MSBuild, you can also choose to use a newer tasks library like the MSBuild Extension Pack.