2010-02-17 5 views
1

Je l'ai vu dans RC 2 notes de version ditMVC 2 RC 2 Ajax question chemin URL

« Le nouveau type de UrlParameter permet des valeurs par défaut dans les voies à supprimer après l'exécution de routage d'URL. »

Mais je reçois toujours les valeurs de la route dans le chemin.

Voici ce que je reçois:

<div id="PartialView"> 
    <%Html.RenderAction("Partial"); %> 
</div> 
<% using (Ajax.BeginForm("Partial", new { name = "test" }, new AjaxOptions() { UpdateTargetId = "PartialView" })) 
    { %> 
<button type="submit"> 
    Submit</button> 
<%} %> 

Dans la page partielle:

<% using (Ajax.BeginForm("Partial", new AjaxOptions() { UpdateTargetId = "PartialView" })) 
    { %> 
<%=Html.TextBox("test") %> 
<%} %> 

sortie de l'URL partielle sur Ajax est:

/Home/Partial?name=test 

Lorsque les valeurs d'itinéraire également inclus dans le chemin Ajax.

Est-ce un comportement ou défaut par défaut ...?

Merci, Santhosh

Répondre

1

Par défaut, il ajoutera les RouteValues ​​à l'URL.

Pour éviter l'utilisation RouteValue Url.GenerateURL ("action", ....)

Lorsque le paramètre RouteValue devrait nouveau nouveau RouteDictionary() ..

Ce tooo ne fonctionne pas comme le RouteValue Le paramètre va juste fusionner avec le routeData existant.

0

De Mr. Haacks blog, vous devez modifier les routes!

routes.MapRoute(
    "Default", 
    "{controller}/{action}/{id}", 
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
); 
+0

par défaut lui-même l'itinéraire contient id = UrlParameter.Optional seulement. Mais encore et encore, je reçois la sortie avec la valeur de l'itinéraire. – Santhosh

+0

Lire son dernier article de blog à ce sujet. –