Today, I discover a new stuff with a coworker.
For sure, many of yours think that it could be very interesting to implement the schema validation that we can found in the Visual Studio UI in the BizTalk Process? No???
In visual studio, you can choose when you use a map to enable (or not) the input/output validation :
But none of your map configuration has an effect after the deployment in BizTalk, because, by default, the validation in not active.
If you follow this link : http://msdn.microsoft.com/en-us/library/aa561963.aspx, you will see that, it is possible to add some flag in the configuration file to enable runtime validation.
In the Xlang configuration section, you can add a debuging section to enable validation to :
- schema (the engine uses System.Xml.XmlValidatingReader to validate every schema representing a message part type and upon failure throws System.Xml.XmlException)
- Assembly (the engine tries to load all assemblies referenced by immediate dependent assemblies of an orchestration and upon failure throws Microsoft.XLANGs.Core.AssemblyValidationException)
- Correlation (the engine verifies that in a parallel convoy all messages that match one of the convoy receives have the same correlation property values and upon failure throws Microsoft.XLANGs.Core.CorrelationValidationException)
- and an extended logging (the engine displays the promoted properties in the information for Microsoft.XLANGs.BaseTypes.PublishMessageException for the message that failed to publish)
If you know appDomain configuration, you can configure your different configuration file to enable validation only for certain BizTalk Process.
This section is call debugging, I’m not sure it decrease performance and maybe it’s interesting to use it more frequently.