ventajas señaladas partes para informacion escritorio desventajas desarrolladores caracteristicas .net portable-class-library windows-10

.net - señaladas - windows 10 para desarrolladores



Cómo llamar a una biblioteca universal de clases de Windows 10 desde una aplicación de escritorio (1)

En el desarrollo anterior, he usado una biblioteca portátil de clases para compartir código entre una aplicación "Metro" de Windows 8.1 y una aplicación de escritorio .NET / WPF.

¿Las bibliotecas de clases de Windows 10 Universal también se pueden usar desde dichas aplicaciones de escritorio y, de no ser así, cuál es la forma recomendada de compartir código en este escenario?


Primero, echemos un vistazo a la primera parte de tu pregunta:

¿Las bibliotecas de clases de Windows 10 Universal también se pueden usar desde tales aplicaciones de escritorio?

Para responder a esto, creé una nueva solución en VS2015 con los siguientes proyectos:

  • Aplicación de escritorio WPF, llamada wpfApp
  • Aplicación Win10 UWP, llamada win10App
  • Biblioteca de clases UWP Win10, llamada win10Lib

Entonces pude agregar la biblioteca de clases como referencia a la aplicación UWP. Pero, recibí un mensaje de error al intentar agregar la referencia de la biblioteca a la aplicación de escritorio.

(SCREENSHOT: Mensaje de error al intentar agregar UWP lib como ref a la aplicación de escritorio)

A continuación, la segunda parte de tu pregunta:

y si no, ¿cuál es la forma recomendada de compartir código en este escenario?

Entonces, agregué un nuevo proyecto de Class Library, pero no del tipo Universal ... Seleccioné la opción Portable Class Library en las aplicaciones de escritorio Classic. Esto me permitió elegir qué plataforma (s) quiero admitir, incluyendo .NET 4.6 y Windows Universal 10.0.

(Captura de pantalla: Agregar biblioteca portátil de clases)

Entonces, ahora tengo un nuevo proyecto de biblioteca de clases en mi solución:

  • biblioteca de clases de escritorio clásica (portátil), llamada portableLib

Comencé a agregar una referencia de biblioteca de clases a mi aplicación de escritorio WPF una vez más, seleccionando mi nuevo proyecto portableLib. Sin embargo, recibí el siguiente mensaje de error:

(SCREENSHOT: Mensaje de error al agregar la biblioteca de clases portátil ref al proyecto WPF)

Esto sucedió porque seleccioné 4.6 (la versión predeterminada de .NET Framework) como una de las plataformas al crear la biblioteca de clases, pero mi proyecto WPF aún estaba apuntando a una versión anterior de .NET Framework. Arreglé esto al editar las propiedades del proyecto de la aplicación WPF y actualicé el objetivo para que coincidiera con la versión del marco de la biblioteca de clases.

Finalmente, agregué una referencia a la nueva biblioteca de clases portátil a mi aplicación Win10 UWP, y se agregó con éxito. Ahora puedo construir la solución sin errores.

Aquí hay una captura de pantalla de mi estructura de proyecto, con referencias.

¡Espero que esto ayude!