Domanda

Sto usando il modello Ajax DataView Microsoft di legare i valori a un modello. Posso fare questo e funziona come ci si aspetta:

<h3>{{ID}}</h3>
<p>{{Address}}</p>

Comunque sto cercando di costruire un legame azione che ha l'ID in esso.

<h2><%= Html.ActionLink(Html.AttributeEncode("{{Name}}"), "Index", "Restaurant", new { Id = Html.AttributeEncode("{{ID}}") }, null)%></h2>

Il nome viene indicato come il testo del link come avrei voluto, ma il link non includere l'ID, invece ha% 7B% 7BID% 7D% 7D

Come faccio a ottenere l'ID di essere adeguatamente analizzato e aggiunto il collegamento?

È stato utile?

Soluzione 2

finalmente riusciti a farlo funzionare, non so se mi veniva stupido o se è la mancanza di documentazione, ma qui è come associare il valore dataview ad un collegamento.

 <h2><a sys:href="{{'Restaurant/Index/' + ID}}">{{Name}}</a></h2>

La parte reale percorso URL deve essere tra virgolette singole ed è necessario utilizzare sys:. Href invece di href

Altri suggerimenti

E 'possibile che le staffe in più stanno gettando fuori. Provate ad assegnare i valori alle variabili e utilizzare le variabili nel ActionLink. Si potrebbe fare l'assegnazione in cima la vista e poi riutilizzarli in tutta la vista pure. per evitare di dover ri-codificare ovunque.

  <% var id = Html.AttributeEncode( "{{ID}}" );
     var name = Html.AttributeEncode( "{{Name}}" );
   %>
  <h2><%= Html.ActionLink(name, "Index", "Restaurant", new { Id = id }, null)%></h2>

La sua buona pratica includere '<%= Url.Action("Index", "Restaurant")%>' quando si costruisce un URL manuale per evitare problemi con il nome dell'applicazione e gli URL contrastanti.

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