Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 35979|Risposta: 2

[ASP.NET] ASP.NET tutorial base di ViewComponent sull'uso di ViewComponent

[Copiato link]
Pubblicato il 7-2-2021 16:18:25 | | | |
Quando un gran numero di pagine chiama lo stesso risultato di visualizzazione, possiamo racchiudere lo stesso contenuto in un componente di vista, ovviamente possiamo anche passare parametri al componente view e restituire il risultato della risposta, scenari: classifiche, moduli, tabelle, ecc.; questo articolo utilizza asp.net core 3.1 per spiegare come utilizzare il tutorial sul componente di vista ViewComponent.

Componenti della visualizzazione

La componente View è simile a una view locale, ma più potente. Il componente view non utilizza binding del modello, ma si basa solo sui dati forniti quando il modello viene chiamato. Questo articolo è stato scritto utilizzando controller e view, ma il componente view può essere usato anche con Razor Pages.

Visualizza i componenti:

  • Renderizza i blocchi invece dell'intera risposta.
  • Include la stessa separazione tra preoccupazioni e benefici di testabilità riscontrati tra controller e view.
  • Può avere parametri e logica di business.
  • Di solito viene chiamato dalla pagina del layout.


I componenti della view possono essere usati ovunque si abbia una logica di rendering riutilizzabile troppo complessa per una visualizzazione locale, come ad esempio:

  • Menu di navigazione dinamica
  • Tag cloud (dove viene interrogato il database)
  • Pannello di accesso
  • Carrello della spesa
  • Articoli pubblicati di recente
  • Contenuti nella barra laterale su un blog tipico
  • Il pannello di accesso apparirà su ogni pagina con un link per effettuare il login o il logout, a seconda dello stato di accesso dell'utente


Vista parziale

asp.net mvc utilizza la vista locale RenderAction per caricare i dati dinamici
https://www.itsvse.com/thread-4828-1-1.html

In asp.net MVC 5 possiamo utilizzare una visualizzazione locale con il seguente codice:



Metodo di chiamata:



ViewComponent è un'alternativa alle visualizzazioni locali.

ViewComponent per iniziare

Visualizza la classe dei componenti:

  • L'iniezione di dipendenza del costruttore è pienamente supportata
  • Non è coinvolto nel ciclo di vita del controller, il che significa che non puoi usare filtri nei componenti della visualizzazione
  • Senza ulteriori indugi, andiamo dritti al punto in cui vogliamo racchiudere la funzionalità componente di una classificazione di aree urbane.


Per prima cosa, crea una nuova cartella "ViewComponents" sotto la directory del progetto e crea un nuovo file di classe "RootClassification.cs" con il seguente codice:



Nella pagina di visualizzazione, creiamo una nuova cartella "Components" sotto la cartella "/Views/Shared" del progetto, poi creiamo una nuova cartella "RootClassification" (questo è l'oggetto con la nuova classe component che abbiamo creato), e infine creiamo un nuovo file "Default.cshtml", il codice è il seguente:



La struttura è la seguente:



Il percorso dettagliato è: /Views/Shared/Components/RootClassification/Default.cshtml

Perché costruire un percorso del genere? Questo dipende da come funzionano i componenti asp.net Core.

Il runtime cerca la vista seguendo il seguente percorso:

/Views/{Controller Name}/Components/{View Component Name}/{View Name}
/Views/Shared/Components/{View Component Name}/{View Name}
/Pages/Shared/Components/{View Component Name}/{View Name}

Il nome di visualizzazione predefinito per il componente view è Default, il che significa che il tuo file view di solito si chiama Default.cshtml. Quando si crea un risultato di un componente di vista o si chiama un metodo View, si può specificare un nome di visualizzazione diverso.

Chiamando, possiamo chiamare dove dobbiamo usare il componente, il codice è il seguente:



Riesegui il progetto con la seguente rendering:

Punteggio

Numero di partecipanti1MB+1 contribuire+1 Collasso ragione
Fessicon + 1 + 1 Supporta il proprietario per pubblicare un buon post, e pubblicherò anche io un buon post!

Vedi tutte le valutazioni





Precedente:EF Core Series (3) Attributi Ombra del Frame Entità [Ristampa]
Prossimo:Il sito web utilizza il plugin swiper per implementare una presentazione di immagini (carousel)
Pubblicato il 12-08-2021 10:21:01 |
Rispondi per vedere il codice?
 Padrone di casa| Pubblicato il 13-08-2023 17:55:05 |
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com