.NET Framework Client profile ó sku="client"

Con la cantidad de características nuevas (y entretenidas) que trae el SP1 de .NET y Visual Studio 2008 no es de extrañar que alguna de ellas nos pase desapercibidas. Seguro que la mayoría de vosotros sabéis que el SP1 trae mejoras en el rendimiento de WPF, que viene Dynamic Data, Data Services (codename astoria), el entity framework, ASP.NETMVC… pero seguro que a alguno el client profile le pilla por sorpresa 🙂

¿En qué consiste?

El .NET Framework Client Profile es una distribución del framework optimizada para aplicaciones cliente. Es sencillo, no trae las librerías orientadas a hacer trabajo en el servidor. Esta reducción hace que ocupe tan solo unos 26Mb y haga la instalación, despliegue, etcétera… más rápido y sencillo.

¿Cómo hago que mi aplicación compile utilizando ese framework?

Fácil, fácil… vamos a probarlo. Crea una nueva aplicación WPF, cuando esté creada, en el explorador de soluciones, abre las propiedades del proyecto recién creado y vete a la pestaña de aplicación

image

 

¿Ves el checkbox de “Client-only framework subset” ? Pues márcalo y listo. Estás utilizando el .NET Framework Client Profile.

¿Implicaciones?

El compilador contrastará los assemblies referenciados con una lista para ver si la aplicación cumple con los requisitos del Client Profile. En caso de encontrar un assembly no presente en el Client Profile nos mostrará un warning. Tanto en el explorador de soluciones…

image

como en la vista de errores…

image

 

Además habrá una modificación en el archivo de configuración de la aplicación, incluirá la sigueinte línea

<startup><supportedRuntime version=”v2.0.50727″ sku=”Client”/></startup>

En el caso de que la máquina cliente NO tenga .net instalado, se le pedirá que instale la parte cliente (más ligera y rápida de instalar para empezar a funcionar. Se actualizará a la full más adelante como actualización de la máquina). En caso de que este instalado .NET framework, ignorará la parte de sku=”client”

Aquí tenéis el enlace a la lista completa de espacios de nombres que están presentes en el Client Profile

http://msdn.microsoft.com/en-us/library/aa187917.aspx

OJO yo puedo referenciar un assembly que NO este disponible en el Client Profile y luego asegurarme que esta en la máquina cliente de uno u otro modo 🙂

Happy Hacking!

 

Algunos Recursos

Client Profile Q&A : http://windowsclient.net/wpf/wpf35/wpf-35sp1-client-profile.aspx

Publicado por

6 comentarios en “.NET Framework Client profile ó sku="client"”

  1. Hola!

    No lo he probado, pero tengo una suposición… 🙂
    Veo que David en el post comenta que la referencia a un assembly que no pertenece al Client Profile, genera un warning, no un error. Entiendo entonces que el proyecto compila.

    Y también entiendo que si desplegamos este proyecto en un ordenador que tenga el assembly referenciado instalado, en proyecto se ejecutará correctamente.

    Pero lo dicho… es una suposición 😉

  2. Eduard,

    Sí, eso lo he probado, si el ensamblado existe, la aplicación funcionará. Pero si despliegas tu aplicación (con el Client Profile) en un XP que no tuviera .NET previamente, la aplicación fallará, claro!

  3. Hola, estoy usando VS2008 con net 3.5 SP1 y no aparecer por ningún sitio la casilla “Client-only framework subset”, ni en la pestaña aplicación ni en la de compilar, ni en opciones avanzadas de compilacion

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *