MVCContrib ActionFilter PassParametersDuringRedirect transmet toujours le type de référence dans la chaîne de requête

StackOverflow https://stackoverflow.com/questions/2014988

  •  19-09-2019
  •  | 
  •  

Question

J'essaie d'utiliser le modèle PRG dans une application asp.net mvc 2 rc.

J'ai trouvé que le projet MVCContrib dispose d'un filtre d'action personnalisé qui conservera automatiquement les paramètres dans TempData.

Dans une action j'ai ce qui suit

return this.RedirectToAction(c => c.Requested(accountAnalysis));

cependant, cela ajoute un paramètre de chaîne de requête à la requête, par exemple

http://mysite.com/account/add?model=MyProject.Models.AccountAnalysisViewModel

Quelqu'un peut-il expliquer comment je peux utiliser l'attribut de filtre PassParametersDuringRedirect de MVCContrib pour ne pas transmettre le type ViewModel dans la chaîne de requête.

Je vois un correctif a été publié pour résoudre ce problème, mais dans la dernière version de MvcContrib prenant en charge MVC 2 RC, il est commenté comme suit

public static RedirectToRouteResult RedirectToAction<T>(this Controller controller, Expression<Action<T>> action)
            where T : Controller
        {
            /*var body = action.Body as MethodCallExpression;
            AddParameterValuesFromExpressionToTempData(controller, body);
            var routeValues = Microsoft.Web.Mvc.Internal.ExpressionHelper.GetRouteValuesFromExpression(action);
            RemoveReferenceTypesFromRouteValues(routeValues);
            return new RedirectToRouteResult(routeValues);*/
            return new RedirectToRouteResult<T>(action);
        }

Toute aide très appréciée.

Merci

Était-ce utile?

La solution

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top