[Silverlight] Pasar proyecto de VS2008 > VS2010 > VS2008, y el mensaje: Cannot get the list of output files from the project

Si probaste la beta, RC y ahora el trial y/o versión final de VS2010 con proyectos en curso de Silverlight desarrollados con VS2008 podrás tener el inconveniente que encontré al abrir proyecto SL con VS2010 y luego querer abrir nuevamente con VS2008.
Si bien el archivo de solución cambia (no es el mismo que VS2008), creía que el archivo de proyecto mantendría cierta consistencia pero no es así.
Esto solamente sucedió en proyectos SL, porque en otros proyectos (web app, consola) al abrir con diferentes versiones del Visual Studio daba el mensaje y podía seguir utilizandolo, pero en SL no me dejaba seguir trabajando (no es un error, pero no te deja utilizarlo 😉 )

Mensaje de “warning” al compilar:
Project file contains ToolsVersion="4.0", which is not supported by this version of MSBuild. Treating the project as if it had ToolsVersion="3.5".

image

El mensaje que no dejaba utilizar el proyecto Silverlight:
Cannot get the list of output files from the project

image

Solución express (rápida)

Abrir el archivo de proyecto (con algún editor de texto plano) y cambiar la línea que dice <Project ToolsVersion=”4.0”

image 
Por <Project ToolsVersion=”3.5”

image

y ya podremos seguir utilizando el proyecto en VS2008

[Silverlight] System.Web.Silverlight donde estás? (Where’s Wally?)

Por si alguien lo necesita como yo… estaba utilizando Silverlight 3, y tratando de modularizarlo con Prism

Abro el ejemplo que viene con Prism (para ver la implementación) que es el proyecto HelloWorld.Silverlight
{Carpeta de instalación de Prism}QuickstartsHello WorldHelloWorld.SilverlightHelloWorld.Silverlight.sln

image

y resulta que faltaba la referencia a un assembly: System.Web.Silverlight

image 

Porque utiliza el webcontrol Silverlight (que venia con el SDK 2.0)

image

…en Silverlight 3 todo es con el archiconocido tag object
image 

Pero si queremos seguir utilizando esta librería? donde la obtenemos?

wally[1] Where’s Wally? System.Web.Silverlight?

Este assembly se encuentra en el Silverlight SDK, pero la versión 2.0, y yo utilizo la 3.0

 

 

Lo que siempre me confunde es saber donde esta cuando es un SDK o cuando es una Tools?

Pero resulta que tenia todos estos en mi carpeta de Silverlight:

Pero donde esta wally? en el SDK de la 2.0

Por estos link a documentos la explicación:

from MSDN
(…) Developers creating new applications will want to use the latest templates that contain the OBJECT tag and other markup. Developers could add the System.Web.Silverlight assembly manually and use the server controls. However, these controls will not provide the latest installation logic, or be able to render iframes for Silverlight history support for example. (…)

 

Entonces… dos opciones:

  1. Desde un ejemplo obtenemos la librería (para compilar)
  2. Instalado las “Server Libraries” únicamente de Silverlight 2.0 SDK

OPCION 1: De un ejemplo obtenemos la librería

Aquí gracias a la La Liga Silverlight, en el post Más novedades sobre Silverlight 3 di con el proyecto:

  • Code MSDN: ASP.NET Projects
    ASP.NET Server Controls for Silverlight Samples
    This samples release contains the ASP.NET server controls (Silverlight and MediaPlayer) that were shipped with the Silverlight 2 SDK
    http://code.msdn.microsoft.com/aspnetprojects

Donde podremos descargar y compilar la libreria System.Web.Silverlight 

image

 

OPCION 2: Instalado las “Server Libraries” únicamente de Silverlight 2.0 SDK

Instalado la versión Silverlight 2.0 SDK, pero solo las “Server Libraries”

image

ya alli “Found Wally”

image

En el ejemplo

image

Espero que les sirva de ayuda o guía.

 

Enlaces: