2009-10-28 4 views
0

J'ai créé une fonction qui génère un modèle de courrier électronique. Le code généré est du code HTML pur avec CSS. Le problème est le compilateur fait cette erreur étrange et met en évidence chaque fois que "#" signe apparaît qui est nécessaire pour définir les couleurs en CSS. J'ai essayé de changer '#' en '/ pound /' puis string.Replace() sur RETURN mais pas de chance. Je suis plus en C#, donc je peux échapper aux caractères spéciaux en utilisant '\' avant eux mais quelque chose f $ # $ là-haut ... Une fois que j'ai enlevé '#' tous retour à la normale et compile bien. Une conjecture?Erreur t 2 'If', 'ElseIf', 'Else', 'End If', 'Const' ou 'Region' attendus

btw, j'utilise StringBuilder pour générer des lignes de code avec sb.Append().

ie.

sb.Append("<div style=""color:#333"">some text</div>") 
+0

Pouvez-vous me donner un peu plus de contexte, est-ce une application web, une application de console, etc ... – JaredPar

+1

Est-ce la ligne de code exacte que vous utilisez dans votre projet? Il compile bien pour moi. De l'erreur, il semble qu'il pense que le livre est une directive du préprocesseur, ce qui ne devrait arriver que si la ligne commence par "#". –

+0

Impossible de reproduire. Cela sonne certainement comme des choses que votre littéral de chaîne a fini immédiatement avant ce personnage, cependant. Et le caractère '#' est utilisé pour définir les littéraux de date dans VB. Mais rien de définitif donc c'est juste un commentaire. –

Répondre

1

Je pense qu'il est un bug,

pour le reproduire je VB.NET 2 (VS 2005), je l'ai écrit votre instruction:

sb.Append("<div style=""color:#333"">some text</div>") 

pas de problème,

J'ai ajouté quelques " supplémentaires pour avoir le message d'erreur que vous avez, J'ai alors tout réparé, toutes les erreurs ont disparu sauf la vôtre.

Solution: Supprimer cette ligne, erreur disparue, ctrl-z (undo) -> tout va bien!

+0

Je l'ai répliqué une fois, quitte VS, rechargé, l'erreur ne réapparaît pas et maintenant je ne peux plus le répliquer. – MartW

+0

Je pense que c'est un bug aussi. Cela m'est arrivé en utilisant du code sur la page et en écrivant des balises js pour les scripts sous forme de chaînes. c'est à dire. eugeneK

1

Je recevais la même erreur et je pouvais simplement copier la ligne, supprimer la ligne, ajouter une nouvelle ligne et coller.

+0

C'est une solution dingue mais ça a marché pour moi :-) – Ken