2010-10-18 8 views
6

Sto provando a verificare se ASP.NET funziona sul server IIS 7.5 dei miei clienti, il codice riportato di seguito funziona correttamente sul mio server.C# ASP.NET "Messaggio di errore del compilatore: CS1002:; previsto" sul codice più semplice

<html> 
<body bgcolor="yellow"> 
<center> 
<h2>Hello</h2> 
<p><%Response.Write(now())%></p> 
</center> 
</body> 
</html> 

Utilizzando lo stesso identico file di text.aspx contenente il codice sopra ottiene l'errore:

Compilation Error 
Description: An error occurred during the compilation of a resource required to 
service this request. Please review the following specific error details and 
modify your source code appropriately. 

Compiler Error Message: CS1002: ; expected 

Source Error: 

    Line 3: <center> 
    Line 4: <h2>Hello</h2> 
    Line 5: <p><%Response.Write(now())%></p> 
    Line 6: </center> 
    Line 7: </body> 

Source File: c:\inetpub\wwwroot\myapp\test.aspx Line: 5 

Tutte le idee perché questo sarebbe? Il suo server eseguirà una versione svizzera di Windows (se questo fa alcuna differenza).

Molte molte grazie. Steven

risposta

13

Il tuo problema è con la seguente riga:

<p><%Response.Write(now())%></p> 

La dichiarazione ha bisogno di un punto e virgola poiché state rigorosamente a scrivere una dichiarazione C# (piuttosto che usare nessuna delle espressioni di collegamento):

<p><% Response.Write(now()); %></p> 

Whoops ... ha perso parte della domanda.

Se questo funziona sul server locale ma non sul server remoto del client, è necessario assicurarsi che il server remoto del client sia impostato per utilizzare Visual Basic anziché C# come lingua.

È possibile anche aggiungere la direttiva lingua direttamente alla pagina aspx * per forzare la pagina per usare la lingua corretta:

<%@ Page Title="Your page's title" Language="VB" %> 
+0

Perché ha funzionato sul mio server? Grazie –

+0

@Steven - Vedi la mia modifica. Ho perso quella parte della domanda. Mi sono distratto dal codice. :-P –

+0

Ottima risposta, grazie per l'aiuto. –

3

Verificare l'impostazione della lingua predefinita in Gestione IIS. Penso che troverai che il tuo computer locale è impostato su Visual Basic e il server remoto sarà impostato su C#.

IIS 7 e versioni successive

  1. selezionare il sito web in questione
  2. Select .NET Compilation
  3. Confrontare il valore di impostazione per la 'Lingua'

Fondamentalmente la sua dichiarazione è Visual Basic.

<%= Response.Write("Blah") %> 

Questa è la stessa dichiarazione in C#

<%= Response.Write("Blah"); %> 
0

Sulla mia messa a punto questo deve essere:

Response.Write (adesso());

Si prega di notare il; alla fine di Response.Write. Quale versione di Windows Server/ASP.NET è installata?

Problemi correlati