This article has been localized into Italian by the community.
Il file ViewImports
ASP.NET MVC e Razor contengono molte funzioni avanzate per lavorare con le vostre Views. Per esempio, potete utilizzare i tipi di dati presenti nel vostro progetto e persino nel framework .NET direttamente nelle vostre Views, ma poichè la View è completamente separata dal Controller, tutte le istruzioni using nel Controller non sono utilizzabili nella View. Questo significa che dovete utilizzare un riferimento completo di tutto il namespace. come questo:
@MyProject.Helpers.StringHelper.GetSummary(longString)
O in alternativa, includere il namespace nella vostra View utilizzando l'istruzione "using":
@using MyProject.Helpers
Purtroppo, dovrete fare questo in TUTTE le vostre Views, e per tutti i namespace che vorreste inclusi nella view. Questo è un bel pò di lavoro, specialmente se, in un momento successivo, volete aggiungere un altro namespace in tutte le Views. Fortunatamente, ASP.NET MVC ci viene incontro. La soluzione è chiamata ViewImports ed è utilizzata includendo un file chiamato _ViewImports.cshtml nel vostro progetto. Proprio come per il file _ViewStart.cshtml, il file _ViewImports.cshtml è richiamato per tutte le vostre Views, prima che vengano restituite come HTML. Vi permette di definire delle funzionalità comuni e delle importazioni, tramite le istruzioni "using" indicate in precedenza.
Ma, il file _VIewImports.cshtml può essere utilizzato non solo per includere un insieme comune di istruzioni "using" e al momento, supporta le seguenti direttive Razor:
- @using
- @inject
- @model
- @inherits
- @addTagHelper
- @removeTagHelper
- @tagHelperPrefix
Aggiungere un file _ViewImports
Per aggiungere un file _ViewImports.cshtml al vostro progetto, fate semplicemente come già descritto per il file _ViewStart.cshtml. Il file dovrebbe essere posizionato alla radice della vostra cartella Views
Il file deve essere chiamato _ViewImports (notate il carattere di sottolineatura come prefisso - E' importante):
Una volta aggiunto, potete iniziare ad aggiungervi delle direttive condivise - saranno automaticamente utilizzabili in tutte le vostre Views.
Differenza fra _ViewStart e _ViewImports
A questo punto, dovreste aver notato che i files _ViewStart e _ViewImports sono piuttosto simili - entrambi vi permetto di implementare delle funzionalità che saranno applicate alle vostre Views. Però c'è una differenza importante: Qualsiasi istruzioneusing aggiunta nel file _ViewStart è limitata allo stesso file e non si applica alle Views che utilizzano il file _ViewStart - al contrario, il file _ViewImports è specificatamente previstro per estendere le Views, consentendo ad esse di trarre vantaggio dalle istruzioni "using" definite nel file _ViewImports.
Riepilogo
Il file _ViewImports vi permette di applicare un insieme di direttive Razor a tutte le vostre Views automaticamente. Per esempio istruzioni "using" e le funzioni TagHelper previste.