2009-07-31 10 views
1

J'ai une base de données héritée qui a des noms de colonnes comme "void". J'ai aussi plusieurs bases de données de journaux Microsoft SSIS. ceux-ci ont des noms de colonnes comme "event" et "operator". Il semble que nous devions définir le CleanName sur la colonne au début dans le modèle Settings.ttinclude, mais je ne suis pas sûr de la meilleure façon d'aborder cela puisque la liste des mots réservés pourrait être longue. Est-ce que ce devrait être une inclusion séparée? Je serais heureux de contribuer, mais je voudrais d'abord une contribution de conception de votre part de gens intelligents.SubSonic 3.0.0.3 C# Comment devrions-nous gérer les mots réservés?

Répondre

4

Les mots réservés dans C# peuvent être traités dans le code en les ajoutant au symbole '@'. Par exemple,

public void Test(int if) 
{ 
} 

échoue avec une erreur du compilateur, mais

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

est très bien. Cela fonctionne aussi pour les noms de propriété. Vous pourriez probablement mettre à jour vos modèles T4 pour vérifier une liste de mots réservés, et s'il y a une correspondance, ajoutez le symbole '@' devant le nom. Quant à la meilleure façon d'ajouter ceci à Subsonic, je devrais faire plus de creuser.

Questions connexes