In questo articolo presenteremo Razor View Import. Oltre al file ViewStart, esiste anche un file ViewImports che il framework MVC cerca quando visualizza qualsiasi visualizzazione.
Come per il file ViewStart, possiamo trascinare e rilasciare ViewImports.cshtml nella cartella, il file ViewImports può influenzare tutte le viste nella gerarchia delle cartelle
Questa vista è una nuova per questa versione di MVC; nelle versioni precedenti di MVC potevamo usare file di configurazione XML per configurare alcuni aspetti del motore di visualizzazione Razor.
Quei file XML ora non ci sono più, e usiamo il codice al suo posto.
Il file ViewImports è dove possiamo scrivere codice e inserire istruzioni generiche per inserire lo spazio di nomi necessario per le nostre visualizzazioni.
Se c'è, di solito usiamo il namespace nella nostra vista, possiamo usare la direttiva nel file ViewImports una volta apparsi, invece di usare l'intero namespace in ogni vista o tipo di tipo.
Esempio
Prendiamo un esempio semplice per vedere come spostare la direttiva using in ViewImports. Nella vista Indice, abbiamo un comando using per inserire il namespace FirstAppDemo.Controllers, come mostrato nel programma qui sotto.
L'uso delle direttive permetterà al codice generato dalla vista Razor di compilarsi correttamente. Senza l'uso di direttive, il compilatore C# non sarà in grado di trovare questo tipo Employee. Per vedere il tipo dipendente, rimuoviamo la direttiva using dal file Index.cshtml.
Ora, esegui l'app.
Vedrai un errore che indica che il tipo o namespace HomePageViewModel non può essere trovato. Probabilmente perché diverse delle tue opinioni richiedono la stessa direttiva di utilizzo. Quindi creiamo un'importazione View nella cartella Views invece di metterla in ogni view. Questo aggiungerà un'istruzione using a ogni vista, basta cliccare con il tasto destro sulla cartella Views e selezionare Aggiungi→Nuovo Elemento.
Nel pannello centrale, seleziona la pagina MVC View Imports. Per impostazione predefinita, il nome è _ViewImports.cshtml. Proprio come ViewStart, non possiamo usare questo file per renderizzare HTML, quindi premiamo il pulsante Aggiungi.
Ora aggiungi la direttiva using da questo al file _ViewImports.cshtml come mostrato di seguito.
Ora tutte le viste visualizzate in questa cartella o in qualsiasi sottocartella possono usare il tipo in FirstAppDemo.Controllers senza specificare un'istruzione using precisa. Rifacciamo la tua app e puoi vedere che la visualizzazione ora è in corso.
|