BizTalk Tools and guidelines

I stumbled upon a nice list of tools and guidelines regarding BizTalk Server (2006). Tools and Guidelines.

Attending Tech-Ed Developers 2006 Barcelona, Spain

I am grabbing my personal stuff, the necessary tickets, passport and my camera. I am flying to Barcelona to attend Tech-Ed Developers 2006. I am looking forward to go to all kinds of sessions. I am still browsing the sessions to find out what the interesting things for me are. I will definitely go to a lot of Architectural sessions. Also some of my favorite speakers are on stage.

Sunday morning I will arive at Barcelona Airport and from there go by buss to the hotel. One day off to visit some interesting areas and have a nice lunch and diner with a good colleague.

Barcelona, here we come, and oh, you can follow our experiences at http://teched2006barcelona.blogspot.com/

Ronald and Iwan will blog there about tech-ed and the sessions.

EventStream - ConnectionString

I am combining the DirectEventStream and the BufferedEventStream.

Keep in mind that the ConnectionString differs.

Buffered : "User ID=BAMUser;Password=BAMUser;Data Source=(local);Initial Catalog=BizTalkMsgBoxDb";

Direct: "User ID=BAMUser;Password=BAMUser;Data Source=(local);Initial Catalog=BAMPrimaryImport";

 

Password Generator [20050513] [Dutch]

De featured link van vandaag: http://www.angel.net/~nic/passwd.html

Vandaag een hele handige link, die het dagelijkse leven op het internet weer iets gemakkelijker maakt. 

Wie kent het niet? Je moet tegenwoordig overal en altijd een gebruikersnaam en wachtwoord opgeven. Het is daarbij niet zo verstandig om elke keer dezelfde combinatie te gebruiken, want wat nu als de beheerder van die ene niet zo koosjere website, jouw zorgvuldige ingevoerde combinatie uit zijn database plukt en deze even ergens anders uitprobeert.  Maar het is ook lastig/ondoenlijk om steeds een nieuw wachtwoord te verzinnen, dat je dan weer voor die specifieke website moet onthouden!

Er is ook een handig bookmarklet beschikbaar: http://www.angel.net/~nic/passwdlet.html.

Voor IE gebruikers is hier een aangepaste versie: http://butcher.satyr.nl/index.php?p=89552902&c=1

UITDAGING
Eigenlijk zou deze functionaliteit nog iets uitgebreidt moeten worden, zodanig dat ik ook nog een periode op kan geven voor het wachtwoord. Dus een combinatie van een masterkey, een site/server/account en een periode of datum, zodat ook de maandelijks te wijzigen wachtwoorden gegenereerd kunnen worden. WIE??

Reading UIPConfigSettings from alternative location

I was looking for a way to separate the UIP configuration settings from the default configuration file. Finally come up with the following solution. To use it you have to change the UIPConfiguration class.

By adding the alternativeConfigFile attribute to the uipConfiguration section, you are able to use the following function to get the configuration

configSections>
section alternativeConfigFile="uipConfiguration.config" name="uipConfiguration" type="Microsoft.ApplicationBlocks.UIProcess.UIPConfigHandler, Microsoft.ApplicationBlocks.UIProcess, Version=1.0.1.0,Culture=neutral,PublicKeyToken=null" />
configSections>

Add the following code to the try section of the getter :

_currentConfig = GetSettingsFromAlternativeLocation();
if ( _currentConfig == null ) _currentConfig = (UIPConfigSettings)ConfigurationSettings.GetConfig( UipConfigSection );

Finally implement the following private function:

private static UIPConfigSettings GetSettingsFromAlternativeLocation()

{

//Retrieve location of EntryAssembly

string entryAssemblyLocation = System.Reflection.Assembly.GetEntryAssembly().Location;

string usedConfigFile = entryAssemblyLocation + ".config";

//Load file in XmlDocument

XmlDocument configurationFile = new XmlDocument();

configurationFile.Load(usedConfigFile);

//Get uipSection

XmlNode uipSectionNode = configurationFile.SelectSingleNode("/configuration/configSections/section[@name='uipConfiguration']");

//Read alternativeConfigFile location

string alternativeConfigFile = ((XmlElement)uipSectionNode).GetAttribute("alternativeConfigFile");

//If not exist return null, to handle default uipConfiguration section

if ( alternativeConfigFile == string.Empty ) return null;

//If filelocation exist then use it, else Combine it with DirectoryName of configfile

if ( !File.Exists(alternativeConfigFile) )

{

FileInfo fileInfo = new FileInfo(usedConfigFile);

alternativeConfigFile = Path.Combine(fileInfo.DirectoryName, alternativeConfigFile);

}

//reuse XmlDocument and load alternative configuration file with UIP settings

configurationFile.Load(alternativeConfigFile);

XmlNode uipConfigurationNode = configurationFile.SelectSingleNode("//uipConfiguration");

if ( uipConfigurationNode != null )

{

UIPConfigHandler uipConfigHandler = new UIPConfigHandler();

return (UIPConfigSettings)uipConfigHandler.Create(null,null, uipConfigurationNode);

}

else return null;

}