Sto correndo in una situazione in cui ho un attacco con il valore ${test}
, nel mio modello componente che rende questo il valore esce ok il problema arriva quando un altro modello chiama questo componente e modelli usando @@RenderComponentPresentation(Component.ID, MyFirstTemplate)@@
a questo punto il ${test}
è valutato e poiché non esiste tale elemento sul componente o nel pacchetto, non valuta nulla.
ho Template Componente Uno che legge il valore di un campo Component (che contiene:
${test}
)- Questo modello rende bene, torno "$ {test}"
ora ho Component Template Due che chiama
@@RenderComponentPresentation(Component.ID, ComponentTemplateOne.ID)@@
- Questo è il punto in cui il valore
${test}
viene ora valutato anziché mantenuto, quindi va da${test}
a "" perché non trova un nome di campo variabile o componente con quel nome.
- Questo è il punto in cui il valore
Component Template Due poi viene chiamato da Component Template tre allo stesso modo
@@RenderComponentPresentation(Component2.ID, ComponentTemplateTwo.ID)@@
- Dal momento che l'
${test}
è già stato valutato e ha perso in Template Componente Due io alla fine non è più il passo con${test}
Sono ancora lasciato con "".
- Dal momento che l'
ho provato:
@@RenderComponentField('myField', 0, False, False)@@
@@RenderComponentField('myField', 0, True, False)@@
@@RenderComponentField('myField', 0, False, True)@@
senza fortuna.
Il seguente è stato il mio lavoro intorno e sembra funzionare:
- Posizionamento del "\" di fronte sia alla parentesi graffa di apertura e chiusura
$\{test\}
- ho bisogno di assicurarsi che rimuovo " \ "dopo l'ultimo Template (Pagina o Componente) eseguito.
- ho in atto ora un C# TBB che prende le "$ {test}" e fa quanto segue ad esso:
- Converte il
${test}
-$\{test\}
nel modello iniziale e un C# TBB sul modello di pagina che poi lo restituisce al valore iniziale di${test}
.
- Converte il
C'è un modo per evitare che ciò accada o un modo per evitare di fare quello che sto facendo per fare questo lavoro?
Grazie per il suggerimento funziona per il primo modello, ma il secondo modello che chiama il primo modello lo valuta e non lo fa trova un oggetto nel pacchetto o nel componente con quel nome e non reiterà nulla. Quindi invece di mantenere $ {endpoint} ottengo "". – TridionNut