2012-04-15 6 views
0

Ich habe 3 Assemblys - 2 von ihnen Anwendungen und 1 Klassenbibliothek (beide Anwendungen verwenden die Klassenbibliothek).Mindestens erforderliche Versionsverwaltung

Eine Anwendung ist ein "Client", der eine Datendatei verwendet, die von der anderen Anwendung erstellt wurde. Ich möchte jedoch überprüfen, ob der Client die Datendatei verwenden kann (z. B. wenn die Datendatei keine Daten aus neuen Versionen des Clients und/oder der Klassenbibliothek verwendet).

Ich dachte, ich könnte nur Version der Client-Anwendung verwenden, aber die Versionsinformationen müssen von der "Creator" -Anwendung erstellt werden.

Edit: Ich dachte, die Frage sei klar, obwohl ich keine geschrieben habe.

Also, wie soll ich Version der Client-Anwendung und Klassenbibliothek speichern, die zum Öffnen und Arbeiten mit der Datendatei benötigt wird?

Diese Version muss von der Bearbeitungsanwendung aus zugänglich sein - aber ich möchte vermeiden, dass ich sie manuell eingeben muss.

+3

Was ist Ihre Frage? – Oded

Antwort

2

Nein, ich würde vorschlagen, für Datendatei Version und nichtMontage Version zu überprüfen, dass die Daten-Datei erstellt. Aus einfachen Gründen kann diese Assembly ihre Version ändern, nicht weil sich das Datendateiformat (etwa) geändert hat, sondern für einige Bugfixes, aber die Datendatei blieb gleich.

Kurz:

Bei der Generierung von Daten-Datei, schreiben Sie in der Kopfzeile/Manifest einer data-file version Informationen und basierend auf dass Informationen, um die richtige Version für Ihren Importeur/Konverter wählen/was auch immer es ist ..

+0

Nun, Datenimporteur wird sich wahrscheinlich in der Zukunft nicht ändern (und durch die Dateigröße). Neue Funktionen werden jedoch der Klassenbibliothek hinzugefügt. Daher könnte es vorkommen, dass eine ältere Version der Client-Anwendung versucht, eine Datendatei zu verwenden, die neue Funktionen der Klassenbibliothek verwendet. – mnn

+0

hm .. Datendatei kann * nichts * verwenden, es sind nur Rohdaten. Clients können verschiedene Versionen haben. Wenn Sie meinen, dass sich das Dateiformat ändern kann, ist es übrigens besser, auf seine Version zu verweisen, die nicht notwendig ist, kann die Version des Klienten widerspiegeln, der es schafft. – Tigran

+0

Du verstehst immer noch nicht, was mein Problem ist. Es ist unwahrscheinlich, dass sich das Dateiformat ändert, aber die Funktionalität der Klassenbibliothek und/oder der Client-Anwendung wird sich ändern. Somit hat die Datendatei keine Version, sondern die Klassenbibliothek und die Client-Anwendung. – mnn