none
Sinn d. möglichen Eigenschaften des "Buildvorgangs" und des "In Ausgabeverzeichnis kopieren" im Projektmappenexplorer ist unklar RRS feed

  • Frage

  • Da gibt es jetzt in VB 2010 ja so viele Möglichkeiten. Ich werde als Anfänger nicht daraus schlau und finde auch keine verständliche Hilfe in Büchern oder der Onlinehilfe. Könnte mir das ein Erfahrener in verständlichen Begriffen erklären? Gruss Ulrich
    Ulrich Boden
    Samstag, 19. Februar 2011 12:00

Antworten

Alle Antworten

  • Ein VB.NET-Lehrgang für einen Anfänger dauert mind. 6 Wochen und ist in
    Büchern auf über 1000 Seiten beschrieben. Das alles hier in einem Forum
    darzulegen, würde das Forum sprengen.
     
    Du musst also etwas konkreter fragen, damit mit einem vertretbaren Aufwand
    auch eine Antwort formuliert werden kann.
     
    --
    Viele Grüße
    Peter
     
     
    Samstag, 19. Februar 2011 12:30
  • Meine konkrete Frage steht schon in der Überschrift! Ich bin auch kein ganz blutiger Anfänger. Die Möglichkeiten der Auswahl (siehe Überschirft meines Threads) sind seit VB 2010 zahlreicher geworden, leider finde ich trotz meiner vielen Bücher keine befriedigende Antwort. Ulrich
    Ulrich Boden
    Samstag, 19. Februar 2011 13:10
  • Schau Dir mal MSBuild an. Hier z.B.;
     
     
    Übrigens, der Betreff wird in einem Newreader nicht umgebrochen und ist
    damit u.U. nicht vollständig sichtbar.
     
    --
    Viele Grüße
    Peter
     
     
    Samstag, 19. Februar 2011 17:14
  • Hallo Peter,

    vielen Dank für Deine Mühe, meine Frage zu beantworten. Vor ein paar Minuten ist Deine Antwort noch mal übermittelt worden, weil sie bearbeitet wurde. Das ist mir Anlaß, mich noch mal zu melden: Dein angegebener Link hilft mir nicht richtig weiter. Vielleicht habe ich mich nicht deutlich genug ausgedrückt. Inzwischen habe ich mal verschiedene Möglichkeiten ausprobiert. Was passiert mit den unterschiedlichen Eigenschaften von Dataset und Datenbank?

    Ausgangssituation: Ein VB 2010-Programm mit Datenbank (SQL-Server)

    Im Projektmappenexplorer Rechts-Klick auf die Datenbankdatei (-mdf) bzw. Dataset (.xsd) - Eigenschaften ändern

                                             Buildvorgang                                   In Ausgabeverzeichnis kopieren                  

    Dataset:                                 keine                                                  nicht kopieren

    Datenbank:                             Inhalt                                                  immer kopieren

    Ergebnis: Die schon im Entwurfsmodus über den Datenbank-Explorer vorgefüllten Tabellen  werden  in das fertige Programm übergeben.

    ____________________________________________________________________________________________________________

    Dataset                                  keine                                                  nicht  kopieren

    Datenbank                              keine                                                 immer kopieren                                                          

    Ergebnis: Die Tabellen im fertigen Programm enthalten keine Daten. Wenn man versucht, die Tabellen zu füllen, werden die Daten nicht abgespeichert.

    _____________________________________________________________________________________________________________

    Dataset                                  keine                                                   nicht kopieren

    Datenbank                               kompilieren                                         immer kopieren

    Ergebnis: Die Tabellen im fertigen Programm enthalten keine Daten. Fehlermeldung.

    _____________________________________________________________________________________________________________

    Dataset                                   keine                                                  nicht kopieren

    Datenbank                               Inhalt                                                 nicht kopieren

    Ergebnis: Zur Entwurfszeit läuft das Programm, aber die Tabellen enthalten schon zur Entwurfszeit nichts (SQL-Exception-Fehler). Das ausführbare Programm läuft ebenfalls, jedoch sind die Tabellen nicht übernommen worden.

    _____________________________________________________________________________________________________________

    Ich gebe zu, dass ich nicht richtig verstehe, was da abläuft. Hinzu kommt noch, dass im Gegensatz zu VB 2008 die Eigenschaften sich nicht mit Inhalt, kompilieren, nicht kopieren usw. erschöpfen, sondern noch weitere Möglichkeiten dazu gekommen sind: Eingebttete Resource, ApplicationDefinition, Page, SplashScreen, DesignData u.a.

    Ich habe mich wirklich bemüht, dahinter zu kommen. Man findet nur wenig darüber und wenn, dann finde ich es immer noch zu unverständlich (bin ja auch nur ein Amateur). Aber ich möchte es so gern vestehen!  Herzliche Grüße Ulrich


    Ulrich Boden
    Montag, 28. Februar 2011 09:01
  • Hallo Ulrich,

    ich verwende die folgenden Einstellungen (Visual Studio 2008):

    - Dataset: Builtvorgang "kein" / Ausgabeverzeichnis "Nicht kopieren"

    - Datenbank: Builtvorgang "Inhalt" / Ausgabeverzeichnis "Kopieren, wenn neuer"

    "wenn neuer" überprüft das Änderungsdatum der Datenbank-Datei im Stammverzeichnis! Das führt dazu, dass die Datei bei der ersten Installation in der Version ausgespielt wird, wie sie bei Dir im Projektverzeichnis (Stammverzeichnis) liegt - inkl. der darin enthaltenen Daten. Wird die Datenbank-Datei nicht verändert, erfolgt keine neue Ausspielung bei einem Update.

    Wenn Du das Programm während der Entwicklung (im Visual Studio) ausführst, wird eine Kopie im debug-Verzeichnis angelegt. Du kannst Daten anlegen, löschen, bearbeiten, das hat keine Auswirkung auf die Datenbank-Datei im Stammverzeichnis.

    VORSICHT! Sobald Du Inhalte in der Datenbank Deines Stammverzeichnisses änderst, ändert sich das Datum der Datenbank-Datei -> sie wird beim nächsten Update neu kopiert -> bereits durch den Nutzer erfasste Daten sind dann weg!!

    Wichtig ist noch zu wissen: Wenn Du etwas am Dataset änderst (neue Querys einfügst o.ä.), dann ändert sich das Datum der Datenbank-Datei -> die Datenbank würde kopiert werden! Keine Ahnung, warum das so ist. Mein Tipp: kopiere Dir Deine Datenbank-Datei an einen "sicheren Ort". Überprüfe vor jeder Veröffentlichung, ob sich das Datum der Datenbank-Datei im Stammverzeichnis geändert hat. Ist dem so, kopiere die Sicherungskopie zurück ins Stammverzeichnis.

    Solltest Du die Datenbank erweitern oder ändern müssen, empfehle ich Dir, dass per Script in Deiner Anwendung zu tun. Ansonsten wird die Datenbank-Datei des Nutzers gnadenlos überschrieben werden. Die Daten wären dann verloren.

    Ich habe zusätzlich ein automatisches Backup für die Datenbank-Datei des Users geschrieben, um mich vor "Unfällen" dieser Art zu schützen.

    Ich hoffe, ich konnte Dir weiterhelfen. Ich habe selber lange an diesem Thema herumgebastelt.

     

    Gruß, viel Erfolg

    Sascha Landowski


    Sascha Landowski www.cash-matrix.de | Nutzen Sie ein Haushaltsbuch, um Ihre Finanzen zu optimieren!
    Donnerstag, 14. Juli 2011 07:57
  • Hallo Sascha, ich freue mich sehr, dass nach so langer Zeit noch jemand ernsthaft auf meine Frage antwortet. Vielen Dank! Deine Anmerkungen helfen mir ein Stück weiter.  Gruss von Ulrich
    Ulrich Boden
    Donnerstag, 14. Juli 2011 10:06