Domanda

Ci sono tonnellate di esempi per il modello di legame in forme html, ma mi chiedo se possibile, e se sì come, vincolante l'uso modello per ActionLinks / GET richieste.

Quindi, dato il seguente modello

public class Lurl
{
  public string Str {get;set;}
  public char Chr {get;set;}
  public double Dbl {get;set;}
}

e il seguente percorso (non sono sicuro di come questo possa essere formato, mi presento per mostrare come mi piacerebbe l'URL presenta le proprietà Str, Chr e Dop)

routes.MapRoute(
    "LurlRoute",
    "Main/Index/{str}/{chr}/{dbl}",
    new
    {
        controller = "Main",
        action = "Index",
        lurl = (Lurl)null
    }
);

Mi piacerebbe usare in questo modo nel mio controller

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index(Lurl lurl)
{
  /* snip */
}

e in questo modo nella mia pagina (due opzioni possibili;? Ci sono più)

<div class="links">
  <%Html.ActionLink("Link one", "Index", new { lurl = Model })%><br />
  <%Html.ActionLink("Link two", "Index", 
         new { str = Model.Str, chr = Model.Chr, dbl = Model.Dbl })%>
</div>

Questo è possibile con l'infrastruttura di legame modello? E se sì, che cosa deve essere fatto per i miei campioni per farli lavorare?

È stato utile?

Soluzione

Credo che si dovrà scegliere sia la classe come un approccio parametro

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index(Lurl lurl)
{
   /* snip */
}

o le proprietà come approccio parametri

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index(string str, char chr, double dbl)
{
    /* snip */
}

... anche se nella classe come un approccio parametro, è possibile utilizzare il metodo "UpdateModel". È possibile passare in una whitelist di parametri che si desidera aggiornare con quel metodo solo nel caso in cui si desidera solo aggiornare alcuni valori nel modello.

Inoltre, Nella tua rottaMappa, quale parametro si lurl mappa per nel tuo percorso percorso? Sono abbastanza sicuro che ci deve essere un 1-1 correlazione lì.

Altri suggerimenti

È possibile anche utilizzare un personalizzato modello di legante . Anche a leggere le questo .

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