2009-12-02 8 views
0

Lorsque le code suivant est exécuté:Newline en constante

Response.Write("window.open('BugSummaryForPrint.aspx?prjId=" + prjId + "&prjName=" + prjName','_blank')"); 

Je reçois cette erreur:

Newline in constant 

Aide!

+6

Vous avez oublié de poser une question. –

+2

Est-ce que vous manquez un "avant prjName dans la deuxième ligne? –

+0

Ressemble à du code ASP classique pour moi, mais dites-moi: quel langage de script que vous utilisez? VBScript ou JavaScript? –

Répondre

5

Aussi horrible d'une "question" que cela, je me sens utile ce soir. Il vous manquait quelques caractères (+ ") dans votre code, après avoir ajouté prjName.

Response.Write("window.open('BugSummaryForPrint.aspx?prjId=" + prjId + "&prjName=" + prjName + "','_blank')"); 
5

Si véritablement C# (et le fait que son une redirection vers un .aspx suggère qu'il est probablement), vous pouvez vous rendre la vie un peu plus facile comme suit:

string resp = String.Format(
    "window.open('BugSummaryForPrint.aspx?prjId={0}&prjName={1}','_blank')", 
    prjId, 
    prjName 
    ); 
Response.Write(resp); 

Vous pourriez aussi faites-le facilement en une seule ligne (faites le String.Format en ligne avec le Response.Write) Je l'ai juste divisé un peu pour plus de clarté. String.Format (et d'autres endroits où vous pouvez utiliser des chaînes de format comme .AppendFormat dans stringbuilders) est un outil souvent négligé.