2015-08-14 12 views
9

Recentemente ho provato a utilizzare una nuova caratteristica C# 6 (stringhe interpolate) nella vista ASP.NET MVC (5) .cshtml, ma quando è stato eseguito ha ricevuto un messaggio di errore relativo allo $. E 'chiaro il compilatore in modalità di compatibilità C# 5, o peggio che sia sia un compilatore C# 5.Dove configurare la versione della lingua della pagina Razor su C# 6?

Quando nel editor di un avviso popup mi avverte (io non so che è VS o ReSharper) Feature 'Interpolated strings' is not available in C# 5. Please use language version 6 or greater.

Il progetto stesso è stato fissato a C# 6, e posso utilizzare C# 6 funzioni nel mio tempo di costruzione codice compilato come controller ecc.

Q: Dove devo impostare la versione del compilatore di pagina, e questo compilatore C# 6 sarà disponibile quando distribuisco la mia app Web in Azure lì?

+0

possibile vittima di http://stackoverflow.com/questions/30832659/c-sharp-6-string-interpolation-in-a-razor-view –

+0

eccetto che ha risposta possibilmente non corretta. Questa è la mia formulazione nella domanda sulla versione del compilatore. –

+0

Vedere http://stackoverflow.com/questions/27968963/c-sharp-6-0-funzioni-non-working-with-visual-studio-2015/31548221#31548221. Alcune funzionalità non funzioneranno, ma la maggior parte lo farà. –

risposta

4

Da String interpolation in a Razor view?:

Questo funziona solo in MVC6. In alternativa, anche da un commento su questo link, è necessario aggiungere il pacchetto dom di roslyn code da ASP.Net.

<div> 
    @($"Hello {this.Model.SomeProperty}") 
</div> 

Per quanto riguarda Azure, vedere questo collegamento. http://azure.microsoft.com/blog/2015/08/11/update-on-net-framework-4-6-and-azure/

Da un grande potere ... Gli utensili, le squadre di quadro e la piattaforma Azure vogliono per garantire i potenti strumenti che vi diamo per aiutare a costruire il vostro sogno è di pari passo con la responsabilità che riconoscere che dobbiamo mantenere in esecuzione in la nuvola. Al momento delle versioni di Visual Studio e Azure SDK 2.7 , Framework 4.6 non era supportato ampiamente in tutto Azure. Ciò è dovuto in gran parte al fatto che altrettanti team (o più) sono responsabili dello sviluppo e della stabilità in corso della piattaforma Azure .

Per il momento, abbiamo un aggiornamento sulla disponibilità di .NET Framework 4.6 per Azure App servizio e un articolo che dimostra come ottenere .NET Framework 4.6 lavorare in ruoli di servizio Cloud.

Azure IaaS Per i clienti che utilizzano le infrastrutture di Azure as a Service servizi (IaaS), l'installazione di .NET Framework 4.6 è manuale. Per installare .NET Framework 4.6 su una macchina virtuale Aza IaaS, il processo è semplice come accedere alla macchina virtuale utilizzando il desktop remoto . Una volta sul computer, il programma di installazione di .NET Framework 4.6 può essere scaricato e installato direttamente nella macchina virtuale . I clienti utilizzando l'automazione di Azure potrebbero anche scegliere di automatizzare l'installazione su macchine virtuali di Azure tramite PowerShell.

Azure App Servizio aggiornamento Il team di Azure App servizio è quasi alla fine della fase di test per il .NET Framework 4.6 e pianificazione della distribuzione agli ambienti. Attualmente, il piano prevede il lancio degli aggiornamenti in Servizio app di Azure durante l'agosto 2015.

Servizi Azure cloud Saurabh Bhatia autore di un articolo del centro di documentazione Azure delineando come installare il .NET Framework in un ruolo Service Cloud. Il contenuto è stato aggiornato di recente per includere il commento specifico per .NET Framework 4.6. È possibile trovare l'articolo aggiornato qui nel centro di documentazione di Azure.

+0

Grazie. Leggi il link a cui fai riferimento. Anche se capisco che l'intuitivo passaggio di Razor tra markup e C# non funziona perfettamente con $, penso che la versione del compilatore non abbia nulla a che fare con questo, ecco perché la mia formulazione nella mia domanda. Una volta che Razor riconosce che è C#, questo va alla classe C# generata. Quindi è interamente il compilatore configurato che capisce o dà un errore. –

+0

Hai provato ad aggiungere i pacchetti di Roslyn, però? –

+0

La mia preoccupazione principale è IIS e Azure. –

Problemi correlati