2009-07-31 15 views
1

Ich habe eine Legacy-Datenbank, die Spaltennamen wie "void" hat. Ich habe auch mehrere Microsoft SSIS Log-Datenbanken. diese haben Spaltennamen wie "event" und "operator". Es sieht so aus, als müssten wir den CleanName in der Spalte in der Settings.ttinclude-Vorlage schon früh einstellen, aber ich bin mir nicht ganz sicher, wie man das am besten angehen könnte, da die Liste der reservierten Wörter sehr lang werden könnte. Sollte das ein separates Include sein? Ich würde mich freuen, etwas beizutragen, aber ich hätte gerne etwas Design-Input von Ihnen, kluge Leute.SubSonic 3.0.0.3 C# Wie sollen wir mit reservierten Wörtern umgehen?

Antwort

4

Reservierte Wörter in C# können im Code behandelt werden, indem sie mit dem Symbol '@' vorangestellt werden. Zum Beispiel

public void Test(int if) 
{ 
} 

schlägt mit einem Compiler-Fehler, aber

public void Test(int @if) 
{ 
    var something = @if; 
} 

ist gut so. Dies funktioniert auch für Property-Namen. Sie könnten wahrscheinlich Ihre T4-Vorlagen aktualisieren, um eine Liste reservierter Wörter zu überprüfen, und wenn es eine Übereinstimmung gibt, fügen Sie dem Zeichen '@' den Namen voran.

Um die beste Möglichkeit Subsonic hinzuzufügen, müsste ich mehr graben.

Verwandte Themen