2012-03-26 38 views
10

So che questo errore è stato pubblicato altrove, ma le soluzioni fornite non funzionano per me.Ottenere "CS0103: il nome 'ViewBag' non esiste nel contesto corrente" quando si distribuisce MVC3 da remoto

Background:

  • Ho creato un nuovo progetto utilizzando la sintassi Razor MVC3 con utilizzando Visual Studio 2010 SP1.
  • Tutto funziona correttamente quando eseguo il progetto localmente.
  • Ho installato MVC3 sul mio server remoto e ho implementato il progetto.

ottengo il seguente errore:

Compiler Error Message: CS0103: The name 'ViewBag' does not exist in the current context 
Source Error: 
Line 1: @model MyModels.AModel 
Line 2: @{ 
Line 3:  ViewBag.Title = "Home Page"; 
Line 4: } 
Line 5: <script type="text/javascript"> 
  • Ho controllato, e ho un file web.config nel mio indice Visualizzazioni che sembra essere completo.
  • Questa non è una soluzione aggiornata. Non sono passato da una MVC beta precedente alla versione finale.
  • Sto diventando pazzo a questo punto. Sarò felice di fornire ulteriori informazioni se richiesto.
+3

Non troppo localizzato per mantenere il mio o 2.2k altre visualizzazioni da colpire questa pagina intenzionalmente negli ultimi 5 mesi;) – anxiety

risposta

7

Argh. Il server su cui avevo distribuito la mia app aveva una vecchia versione di MVC3. I aveva eseguito il programma di installazione MVC3 prima di distribuire la mia app, ma a quanto pare il programma di installazione non rimuove le precedenti versioni beta o RC di MVC3. È disinstallare le versioni precedenti di MVC3 tramite aggiungere/rimuovere programmi prima di installare la versione più recente.

sono stato in grado di fare questo lavoro in due modi:

  1. Disinstallare MVC3 completamente dal server, quindi bin distribuire la DLL MVC3 con la mia app.
  2. Dopo aver disinstallato completamente MVC3, installare l'ultima versione dal http://www.microsoft.com/web/gallery/install.aspx?appid=MVC3

Nota: Riavvia IIS dopo eventuali modifiche. (Riciclando solo il pool di app probabilmente funzionerebbe anche.)

+2

Nel caso in cui qualcun altro abbia questo problema, assicurati hai un web.config valido nella tua directory Views come SO indicato nella domanda. La distribuzione bin ha funzionato per me senza dover installare MVC3 come ha fatto Jim. – Rich

Problemi correlati