17 messaggi dal 08 giugno 2010
salve, ho bisogno di aggiungere un controllo sulla view da controller. mi spiego meglio...

dalla action devo aggiungere un div alla view che ha chiamato l'azione...

spero di essermi spiegata....
Il modo corretto di procedere è aggiungere un flag sul model; poi ne verifichi il valore dalla view ed eventualmente renderizzi un div:

<% if (this.Model.ShowSomething) { %>
<div>ecc.ecc.</div>
<% } %>

Ciao
m.
17 messaggi dal 08 giugno 2010
ok ma c'è la possibilità di fare quanto chiesto da me? posso dal controller aggiungere un controllo sulla pagina che lo ha attivato?
Si può fare tutto, cara aspiranteMVC  , banalmente basta realizzare una stringa con dell'HTML dentro e mandarla alla view.

Il problema è che quando si fa qualcosa bisogna sempre capire se la strada è quella giusta oppure no. E secondo me non lo è.

m.
5 messaggi dal 20 agosto 2008
Creare controlli nel controller (che gioco di parole!) sembra essere ostacolato dagli stessi creatori del framework mvc.

Se quello che ti serve è creare dell'html nel controller e portarlo nella vista, puoi usare il viewdata.

NEL CONTROLLER:

public ActionResult Index(){
...
String html = "<div>ciao</div>";
this.ViewData.Add("mytag", html);
...
}

NELLA VISTA

<%= viewData["mytag"]%>


Se invece la tua intenzione era quella di usare gli html helper nel controllo e portare l'html da essi generato nella vista allora la vedo molto grigia.

Tuttavia ritengo che per acluni tipi di applicazioni creare controlli nel controller sia una soluzione vincente sotto il punto di vista della flessibilità, della semplicità e del riuso del codice (che non sono cose da poco soprattuto in applicazioni medio grandi).

La separazione "forzata" tra i controlli ed il modello talvolta produce inutili lungaggini.

Prendiamo ad esempio due componenti: Jqgrid mvc e Telerik Grid.

La prima viene completamente configurata nel controllo e renderizzata nella vista.
La seconda deve essere completamente configurata nella vista vale a dire scrivere molto codice in mezzo all'html.
Quando vedo infatti tutto quel codice c# sparpagliato qua e là nell'html mi chiedo "ma come? non si era fatto di tutto per separare codice e html?"

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.