NuGet: Qual è l'appropriato “FrameworkName” per la creazione di pacchetti con Windows Phone 7 binari?

StackOverflow https://stackoverflow.com/questions/4766908

Domanda

Ho appena creato un pacchetto NuGet per uno dei miei progetti open source e include un Windows Phone 7 binario. Ho appena provato e invece di aggiungere la libreria 7-specifico di Windows Phone, ha aggiunto la biblioteca Silverlight.

La mia domanda è: come posso impostare la mia architettura cartella in modo che il gestore di pacchetti NuGet riconosce i miei binari WP7-specifici e installa quelli invece dei binari Silverlight?

Ho seguito le istruzioni elencate qui per il targeting più quadri in NuGet pacchetti.

Ecco quello che la mia struttura di cartelle attualmente appare come:

\lib
    \.NetFramework 4.0
        \MyAssembly.dll
    \Silverlight 4.0
        \MyAssembly.Silverlight.dll
    \Windows Phone 7
        \MyAssembly.Mobile.dll

Cosa dovrei fare diversamente?

È stato utile?

Soluzione

Noi non supportiamo WP7 nativamente ancora poiché non v'è alcun supporto del profilo (la parte del profilo del nome quadro non è supportato in cartelle). Vedere questo problema per maggiori informazioni http://nuget.codeplex.com/workitem/219 .

FWIW: Windows Phone 7 è Silverlight 4 Profilo = Windows Phone

.

Per il momento si dovrà creare un altro pacchetto per WP7.

Altri suggerimenti

Sembra che questo è stato risolto con la ultima versione (1.1) di NuGet . Lo si può verificare con il seguente test (preso direttamente dal test di unità Nuget):

[TestMethod]
public void ParseFrameworkNameWithWPProfileGetNormalizedToWindowsPhone() {
    // Act
    var frameworkName = VersionUtility.ParseFrameworkName("sl4-wp");

    // Assert
    Assert.AreEqual("Silverlight", frameworkName.Identifier);
    Assert.AreEqual(new Version("4.0"), frameworkName.Version);
    Assert.AreEqual("WindowsPhone", frameworkName.Profile);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top