mauroDev.NINJA

Entradas recientes


Comentarios recientes


Archivos


Categorías


Meta


Portando un proyecto desde SDK Preview al SDK Release

Mauricio AndrésMauricio Andrés

Hola y bienvenido! espero que estés súper!

Estos últimos días varias personas me han escrito pidiendo ayuda ya que proyectos que habían comenzado meses atrás utilizando Windows 10 Preview y Visual Studio 2015 RC ya no cargan, ni compilan con la versión final de Windows, ni con Visual Studio 2015 RTM.

Yo he estado desarrollando un proyecto desde que Windows 10 Preview salió a la luz, por lo cual, cuando ya llegó el Release estable había avanzado demasiado como para crear un proyecto nuevo, pero si ese no es tu caso y no haz avanzado mucho, te recomiendo empezar con un proyecto de 0 y copiar archivos.

Ahora te voy a mostrar algunos NinjaTips que me sirvieron, ojo que esto fue algo que me sirvió a mí, no es una solución genérica que sirva a cualquier proyecto, pero con un poco de suerte espero que te sirva.

Cuando abrimos nuestro proyecto, deberíamos ver algo así, el mensaje nos dice que debemos actualizar nuestro SDK ya que el que tenemos actualmente no es compatible con el que fue creado el proyecto inicialmente.
vs2015rc_error1

Tras haber creado un proyecto nuevo en Visual Studio 2015 RTM y compararlo con mi solución antigua me di cuenta que existían varias diferencias entre nuestro archivo .csproj (archivo de proyecto) antiguo y el del proyecto nuevo, entre ellas el TargetPlatformVersion y TargetPlatformMinVersion.

vs2015rc_error2

Mientras el archivo antiguo apunta claramente a 10.0.10069.0, que es exactamente la versión del SDK que yo utilicé cuando comencé con esta aplicación, el nuevo .csproj apuna a 10.0.10240.0 la cual es la versión final del SDK, edita estos valores dejando tu proyecto tal cual muestro en esta imagen.

vs2015rc_error3

Ahora, otro cambio importante que sufrió el SDK es que ahora todas nuestras dependencias y ensamblados se encuentran en un archivo JSON llamado project.json. Lo que hice fue copiar este archivo junto con project.json.lock de un proyecto nuevo a la carpeta del proyecto que estaba modificando, y luego agregar una referencia a estos archivos.

vs2015rc_error4
vs2015rc_error5

Una vez que hayamos copiado los archivos a la carpeta de nuestro proyecto, iremos a visual studio y le daremos botón derecho a nuestra solución y presionaremos Recargar Proyecto, y luego presionaremos Mostrar todos los archivos para poder visualizar los 2 archivos JSON que hemos incluido.

vs2015rc_error6
vs2015rc_error7

Muy bien! pero si tratamos de compilar nuestra solución, nos aparecerán muchos errores de que no se han encontrado varias de nuestras librerías bases, como lo son System.Object por ejemplo. Esto es debido a que en el nuevo SDK se cambió la manera en que se llama a las constantes de depuración.

Lo que haremos será hacer click derecho sobre nuestro proyecto y seleccionar Descargar Solución, luego editaremos nuevamente nuestro archivo .csproj, buscaremos todas las líneas en donde esté declarado DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP y lo reemplazaremos por DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP

Ahora que editamos nuestro archivo .csproj por última vez, ahora recargaremos el proyecto y nos vamos a dirigir a editar nuestro Package.appxmanifest, recuerda elegir la opción de Ver código (F7)

vs2015rc_error9
vs2015rc_error8

Cambiaremos el TargetDeviceFamily que tengamos por Name=”Windows.Universal” MinVersion=”10.0.0.0″ MaxVersionTested=”10.0.0.0″

Y por último lo que debes hacer es editar nuestro Paquetes NuGets, probablemente varios de los NuGets que hayas instalado anteriormente no funcionen correctamente. Te recomiendo entrar al administrador de paquetes y presionar el botón Restaurar en el caso de que aparezca, de lo contrario te recomiendo eliminar cada uno de los conflictos e instalarlos nuevamente en sus versiones estables más actuales.

Listo! prueba compilando nuevamente tu aplicación 🙂 espero que estos consejos te hayan sido de ayuda, si tienes dudas respecto a esto, o aún tienes problemas para portar tu aplicación, no dudes contactarme por acá o por las redes sociales.

Recuerda comentar y compartir este post con tus amigos para que mi ayuda llegue a más personas!

Hasta la próxima, chao chao! 😀

I love to make impact through #coding and #technology, I'm a #software #developer and #musician!

Comments 0
There are currently no comments.