Code beim Buildvorgang ändern

Hier das gleiche wie bei Java :wink:

Da demnächst einige Projekte kommen in denen ich Zugangsdaten für Backends einbinden muss versuche ich gerade einen Weg zu finden wie ich die zwar im Code haben kann, aber nicht in SVN einchecke.
Weil ich will nicht ausschließen dass die Projekte mal Open Source werden, aber es muss ja keiner meine Daten kennen

Kennt da irgendwer einen Weg?
Als Build Umgebung wird VS 2012 verwendet.

so hab eine Lösung gefunden
Die Klasse wird auf 2 Dateien als partial class aufgeteilt, die beide auch eingecheckt werden, die 2. Datei enthält die leeren Konstanten.
Diese Datei wird noch einmal kopiert und kann mit eingecheckt werden.
Für die richtige Funktion muss diese Datei unter einem anderen Namen noch einmal kopiert werden und dort werden die Daten eignetragen. Diese wird NICHT eingecheckt.

Und dann einfach ein Prebuild Event in VS definieren

if EXIST "$(ProjectDir)\Constants_private.priv" copy "$(ProjectDir)\Constants_private.priv"  "$(ProjectDir)\Constants_private.cs"

und ein Postbuild Event

if EXIST "$(ProjectDir)\Constants_private.empty" copy "$(ProjectDir)\Constants_private.empty" "$(ProjectDir)\Constants_private.cs"

so wird die eingecheckte Datei immer leer gehalten, trotzdem kann das Buildsystem alles bauen

wird auch gleich noch einmal ins Wiki wandern