2011-01-15 8 views
2

Ich habe gerade (auf die harte Tour) entdeckt, dass wenn Sie Ihre Anwendung auf einem Gerät nach einem "Rebuild" oder einem "Clean -> Build" von Visual Studio Ihre App bereitstellen zuerst deinstalliert und dann neu installiert, was dazu führt, dass die isolierten Speicherdateien gelöscht werden.WP7 - Isolierte Speichereinstellungen wurden bei "Rebuild" gelöscht

Das Application Deployment Tool scheint immer zu deinstallieren - Neuinstallation unabhängig davon, ob es sich um einen inkrementellen Build handelte oder nicht.

Hat jemand einen Workaround gefunden? Natürlich ist es am offensichtlichsten, niemals Ihre Anwendung neu zu erstellen, aber was passiert, wenn Sie es versehentlich tun? Derzeit habe ich nicht alle generierten Dateien unter Quellcodeverwaltung. Wenn ich also versuchen würde, die App auf einem anderen Computer zu erstellen, wäre das eine Neuerstellung (vielleicht werde ich den generierten Junk zur Quellcodeverwaltung hinzufügen, wenn niemand eine hat Workaround)

Antwort

3

Wenn ich eine alternative Appraoch vorschlagen kann .. Ich denke, Sie werden es auch in anderen Situationen nützlich finden, wenn Sie einen kleinen Prozess bei der Generierung Ihrer Testdaten einführen können, so dass es einfacher ist, entweder Wiederherstellen oder b) generieren.

Sie könnten zum Beispiel eine Debug-Build-Funktion haben, um die Dateien auf dem Gerät auf einen lokalen WCF-Dienst auf Ihrem PC hochzuladen/herunterzuladen (eine vereinfachte Version von dem, was Rongchaua tat here).

Oder mehr Arbeit, wenn Sie bereit sind, aber noch mehr zusätzliche Vorteile zu bieten wäre, einige automatisierte Testmöglichkeiten in Ihre App zu entwickeln .. beginnend mit der Generierung von ersten Testdaten. Hier ist etwas, das Sie betrachten könnten, um auf diesem Weg zu beginnen.

Claus Konrad Blog: WP7: How to unit test a MVVM Light WP7-application

Zugegeben diese ein wenig Mühe nehmen würde, aber es ist ein Ansatz, der Ihnen eine gewisse Unabhängigkeit von manuell erzeugten Testdaten, die immer in meiner Erfahrung gibt ein Streit zu verschiedenen Zeiten erweist. Und wenn Sie das Problem gelöst haben, finden Sie alle möglichen Gründe, sich dafür zu bedanken, dass Sie es später machen. Ob es Zeit spart oder robuster testet, weil Sie es sich leisten können, aggressiver mit Ihren Testdaten/Testausführung umzugehen und mehrere Testdatenkonfigurationen zu verwalten .

+0

Die WCF-Service-Sache sieht interessant aus, kann es verwendet werden, um Dateien zu/von einem echten Gerät oder nur dem Emulator zu übertragen? Das Problem mit dem zweiten Ansatz ist, dass ich MVVM Lite nicht in meiner App verwendet habe, sondern nur meine eigenen Ansichtsmodelle geschrieben habe, also könnte es ein bisschen Arbeit sein, das jetzt zu integrieren. Hat das MVVM Lite-Framework viele Vorteile? – Praetorian

+0

Ich empfehle Laurent Bugnions EX14 aus Mix. Sie werden schnell verstehen, was MVVM in die Testbarkeitsgleichung bringt. Ja, diese App funktioniert mit einem Gerät, vorausgesetzt, Ihr Gerät verfügt über Netzwerkzugriff auf Ihren PC, egal ob über USB oder über das Netzwerk verfügbarer http-Dienst. Es muss jedoch von CTP aktualisiert werden, oder lesen Sie einfach den Code für Ideen. –

+0

Ich werde auf jeden Fall beide Empfehlungen prüfen. Aber für die Zwischenzeit, wissen Sie, welche VS-Dateien ich zur Versionskontrolle hinzufügen sollte, damit ich diese wiederherstellen kann und VS glauben, dass es keine saubere Wiederherstellung ist? – Praetorian

3

Es gibt aa Abhilfe:

  • öffnen Sie die Lösung Konfigurationsmanager
  • neben ist eine deploy Spalte zu bauen, deaktivieren Sie Ihr Projekt
  • Presse F5

Dies wird die App starten das ist bereits auf dem Gerät, ohne es zu überschreiben (und seinen Speicher zu löschen).

Verwandte Themen