Announcement

Collapse
No announcement yet.

Codezeilen nur bei Setup Erstellung mitkompilieren?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Codezeilen nur bei Setup Erstellung mitkompilieren?

    Hallo,
    ich habe ein datenbankbasiertes Tool für einen Kunden geschieben, das primär nur Daten ausgibt, hin und wieder aber auch Datensätze verändert. Da ich zum Testen diese Inserts/Updates nicht gebrauchen kann, habe ich die betreffenden Zeilen einfach auskommentiert.

    Bevor ich ein Setup einer neuen Version erstelle und dem Kunden zuschicke, nehme ich diese Zeilen normalerweise wieder in das Programm mit auf, allerdings habe ich dies nun schon 2-3x vergessen. Deshalb eine Frage:

    Gibt es eine Möglichkeit, Visual Studio 2005 zu sagen, dass es bei der Erstellung eines Setup-Paketes diese Zeilen mitkompilieren soll?

    Schonmal Danke für Eure Mühe!

  • #2
    Hallo,

    in C# es gibt für diese Aufgabe 2 Optionen:

    a) System.Diagnostics.Conditional

    Code:
    [System.Diagnostics.Conditional("DEBUG")]
    private void ConditionalDoWork(string sInput)
    {
         MessageBox.Show(sInput, "Conditional");
    }

    b) #if ... #endif

    Code:
      private void button1_Click(object sender, EventArgs e)  
      {
    #if MeinSymbol
             MessageBox.Show(IfDebugInfo(), "if MeinSymbol");
    #endif
       }
    In Visual Studio kann man im C#-Projekt eigene Symbole definieren, die dann über #if ausgewertet werden können. Immer dann, wenn das Symbol nicht aktiv ist, stellt Visual Studio die betroffenen Zeilen im Text Editor durch eine dunkelgraue Schrift dar. Man sieht somit sofort, ob etwas "scharf" ist ;-)

    Zumindestens das Conditional-Attribut steht auch in VB zur Verfügung. Wenn der Datenbankzugriff in eine derart gekennzeichnete Methode ausgelagert wird, wird diese nur im Release-Modus kompiliert. Sollte dann vergessen werden, den Methodenaufruf auszukommentieren, legt wenigstens sofort der Compiler sein Veto ein, wenn es im Release-Modus diese Methode nicht mehr gibt.

    In VB auch kann #If DEBUG ... #End if verwendet werden, um Programmzeilen nur im Debug-Modus zu kompilieren.
    Zuletzt editiert von Andreas Kosch; 17.12.2007, 09:01.

    Comment

    Working...
    X