2012-12-19 11 views
19

Ho questo problema: Da un database, ho tenuto una stringa, che contiene HTML mescolato con il codice C#. Vorrei poter eseguire correttamente entrambi i codici sulla mia pagina .aspx.Valuta il codice C# come stringa in un file aspx

ad es. nel mio aspx:

<div><%= Model.repo.getCode() %></div> 

e il metodo getCode() dammi questo:

<div id="secondDiv"><p><%= Model.Person.Name %></p></div> 

quindi voglio il file html aspetto finale simile:

<div><div id="secondDiv"><p>Jhon</p></div></div> 

qualsiasi suggerimento?

+0

Una domanda molto buona! Io cosa ti serve espressioni –

+1

Perché non puoi iniettare il valore di Model.Person.Name nel codice HTML all'interno del metodo getCode? –

+0

Il codice è semplice (valutazione di proprietà o qualcosa del genere?) –

risposta

1

Ci può essere un modo diretto per vincolare tale valore, Ma se è possibile memorizzare String.Formatable in base di dati allora sarebbe facile associare i dati necessari.

Utilizzando String.Format a raggiungere come,

restituito stringa dal Model.repo.getCode() (vedi parentesi graffe)

"<div id="secondDiv"><p>{0}</p></div>"; 

E nel codice ASP,

<div><%= string.format(Model.repo.getCode(),Model.Person.Name) %></div> 
+0

Suppongo che ottenga tutto da un databse quindi non lo sa se avrà bisogno di Model.Person.Name o qualcos'altro ... –

+0

:(Ho perso quel punto, correggendo la risposta – paragy

0

Dai un'occhiata a questo progetto perché mi ha aiutato con un problema simile: https://github.com/formosatek/dotliquid Fondamentalmente puoi legare qualunque cosa cts a un modello e quel modello può chiamare le proprietà dei tuoi oggetti e persino usare la logica condizionale e i loop.

Problemi correlati