Para poder usar el cliente nativo de informix en aplicaciones que usan NHibernate o Enterprise Libraries DataBlock debemo hacer unos cambios en el archivo machine.config del framework.
Este archivo lo vamos a encontrar en:
Windows\Microsoft.NET\Framework\v4.0.30319\Config (x86)
Windows\Microsoft.NET\Framework64\v4.0.30319\Config (x64)
Dentro del mismo buscamos la sección <DbProviderFactories> y dentro de ella añadimos las siguientes dos lineas:
<add name="IBM Informix .NET Data Provider" invariant="IBM.Data.Informix" description="IBM Informix Data Provider for .NET Framework 2.0" type="IBM.Data.Informix.IfxFactory, IBM.Data.Informix, Version=3.0.0.2, Culture=neutral, PublicKeyToken=7c307b91aa13d208" />
<add name="IBM Informix .NET Data Provider 3.0.0" invariant="IBM.Data.Informix.3.0.0" description="IBM Informix Data Provider 3.0.0 for .NET Framework 2.0" type="IBM.Data.Informix.IfxFactory, IBM.Data.Informix.3.0.0, Version=3.0.0.2, Culture=neutral, PublicKeyToken=7c307b91aa13d208" />
En principio, esto debería ser todo. En caso de falla, también se puede revisar el registro de Windows según este post: http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/31d8a133-239b-4a22-843a-bc63b69c9eca/