È possibile utilizzare più parametri VaryByCustom durante la memorizzazione nella cache di un controllo utente?

StackOverflow https://stackoverflow.com/questions/134962

  •  02-07-2019
  •  | 
  •  

Domanda

Ho provato questo in un paio di modi diversi, ma non funziona per qualche motivo. È anche possibile?

È stato utile?

Soluzione

Sì. Separali nella tua dichiarazione per punto e virgola.

Altri suggerimenti

Se si esegue l'override di GetVaryByCustomString () nel file Global.asax.cs, è possibile passare un elenco delimitato da punti e virgola di valori che è necessario analizzare.

Esiste un valore integrato (Browser) che verrà utilizzato se l'attributo specificato non esiste.

È possibile utilizzare più parametri separandoli con un punto e virgola, ma è necessario implementare la logica di suddividerli da soli. Ciò significa che puoi usare qualsiasi personaggio come separatore, perché devi analizzarlo da solo.

Probabilmente hai la precedenza su GetVaryByCustomString (contesto HttpContext, stringa personalizzata) nel tuo global.asax. Il parametro personalizzato conterrà tutto ciò che passi usando VaryByCustom , come questo

<%@ OutputCache Duration="86400" VaryByParam="none" VaryByCustom="custom1;custom2" %>

Nota aggiuntiva: base.GetVaryByCustomString non implementa alcuna funzionalità di suddivisione delle stringhe e farà qualcosa solo quando browser viene passato come valore. Altrimenti restituirà null.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top