Nuevo SDK para Dynamics CRM 4 con muchas novedades

Creo recordar que hasta ahora nunca había comentado la aparición de una nueva versión del SDK de CRM en este blog, y eso que vamos ya por el número 12. El SDK de CRM siempre ha sido algo así como “la biblia de los desarrolladores” de CRM. Si queremos extender CRM, llamar a sus servicios web, construir flujos de trabajo, analizar su modelo de datos, etc. el SDK es la herramienta más adecuada y es algo con lo que todo desarrollador debe estar familizarizado.

Pues bien, ya tenemos el SDK 4.0.12 publicado en MSDN y disponible para descarga. Y esta vez no se trata de una revisión menor sino que este SDK trae las llamadas “Advanced Developer Extensions” que son un conjunto de librerías y herramientas que cambiarán (para bien) la forma que tenemos de desarrollar con Dynamics CRM. Entre las novedades de estas extensiones, también llamadas Microsoft xRM, están:

  • Una utilidad de generación de código llamada CrmSvcUtil.exe que básicamente genera un proxy cliente con los Servicios Web de CRM. El proxy está formado por un conjunto de clases .NET fuertemente tipadas que simplifican el acceso al CRM desde nuestra aplicación.
  • LINQ para Microsoft Dynamics CRM. Cómo sabéis LINQ es un componente del .NET Framework (a partir de la versión 3.5) y se ha convertido en un estándar para realizar consultas contra distintos repositorios de datos y sistemas. Pues bien, ahora puedes realizar cualquier consulta LINQ contra las entidades del CRM y el proveedor se encargará de traducirlas en consultas FetchXML que entienda el CRM de forma totalmente transparente para nosotros.
  • Soporte para WCF Data Servicesque, entre otras cosas, nos va a facilitar mucho el trabajo cuando desarrollemos componentes Silverlight que necesiten acceder, modificar o eliminar registros de Dynamics CRM.
  • Portal Integration toolkit. Facilita conectar portales web con Dynamics CRM como backend. El toolkit incluye controles web que puedo incluir directamente en mi página ASPX así como un completo CMS (Content Management System) construido mediante entidades personalizadas del CRM. Con él, puedo publicar nuevas páginas en mi portal o actualizar su contenido simplemente desde el interfaz del CRM. Estos portales pueden ser alojados en cualquier servidor o en la nube en Windows Azure.
  • Gestión de la conexión simplificada. Simplemente es necesario definir una cadena de conexión para conectarse al API del CRM.
  • Estas extensiones son válidas para CRM Online, On-Premise y CRM Hosted.

En el SDK encontrarás mucha más información sobre esto y ejemplos en la carpeta SDK\Microsoft.XRM como esta sencilla aplicación de consola para crear un contacto en CRM:

Microsoft.Xrm.Program

¿Curioso, no?

Pues nada, os animo a descargaros el SDK y leer estas novedades con detenimiento. Seguro que os ahorrará mucho trabajo en el futuro…