Frage

Ich schaffe einige C # Tools für das Spiel an dem ich arbeite, und ich hinzufüge, die „aktuelle Dateien->“ Dropdown-Menü.

Das Problem ist, ich kann nicht C # 's Seite ‚Einstellungen‘ in VS2008 erhalten mir zu erlauben, eine typisierte HashSet hinzuzufügen. Es gibt einfach keine Möglichkeit, es zu tun.

Ich habe alle hackalicious und manuell bearbeitet die "Settings.Designer.cs" Datei an:

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public global::System.Collections.Generic.HashSet<String> RecentLibs {
        get {
            return ((global::System.Collections.Generic.HashSet<String>)(this["RecentLibs"]));
        }
        set {
            this["RecentLibs"] = value;
        }
    }

Das scheint ganz gut zu funktionieren. Ich weiß jedoch, dass es geht, diese Änderungen mit dem Code-Generator atomisieren.

irgendwann

Was ist der richtige Weg, dies zu tun? Ist C # einige eingebaute Art haben, die ich für diese Funktionalität verwenden sollten und nicht nur eine einfache HashSet?

War es hilfreich?

Lösung

Sie es auf diese Weise nicht tun. VS wird jeder Code in Settings.Designer.cs nuke.

öffnen Sie stattdessen die Einstellungen Editor aus VS (dies wird das Design-Editor für die Settings.settings und Settings.Designer.cs Datei anzuzeigen).

Dann drücken Sie F7, um die Codeansicht zu erhalten. VS schaffen wird automatisch eine Datei Settings.cs genannt, die eine partielle Klasse ist mit Settings.Designer.cs Datei geteilt. Diese Datei können Sie nach Herzenslust bearbeiten.

Ihre XML-Einträge in der Datei Settings.settings können jedoch erhalten geröstet. Ich würde eine separate Kopie von denen halten nur für den Fall.

Andere Tipps

Nicht sicher eine ‚richtige‘ Art und Weise, dies zu tun, aber Sie können Ihren Code zu einer partiellen Settings.cs Klassendatei, ohne sich Gedanken darüber, dass Visual Studio überschreiben sie sicher bewegen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top