2011-07-05 2 views
0

modelbinded 입력 매개 변수로 리디렉션 내가 전화하려고하면 입력 매개 변수 ES : 이제의 asp.net MVC 내가 내 컨트롤러 내부 액션 메소드의 무리가

[HttpGet] 
public MyActionMethod(MyCustomModel data){ 
... 
} 

... 

public class MyCustomModel{ 
    public int total {get;set;} 
    public string description {get;set;} 
} 

로 바인더 제본 자신의 모델과 각 이 메서드는 MyCustomModel을 구성하기 위해 쿼리 문자열 매개 변수의 올바른 집합을 전달하여 모든 것이 예상대로 작동합니다. 내가 사용하여 다른 actionmethod에서 액션 메소드로 리디렉션하는 경우 :

RedirectToAction("MyActionMethod", new { total=10, description="test"}); 

예상대로 그것은 또한 작동합니다. 유사한

RedirectToAction(c => c.MyActionMethod, new MyCustomModel{total=10, description="test"}); 

뭔가 확장 할 수있는 'MvcContrib에 의해하지만 불행히도 어떤 이유에서 제공하는 확장 방법을 사용하여 achived 할 수 있습니다

문제는 그와 같은 강력한 형식의 리디렉션 뭔가 어떤 종류의 실현하려하고 싶은 것입니다 잘못된 요청으로 끝나는 쿼리 문자열에서 올바른 매개 변수 집합을 작성하지 마십시오.

아이디어가 있으십니까?

답변

0

당신은

TempData["MyCustomModel"] = new MyCustomModel{total=10, description="test"}); 

및 리디렉션 점점 액션 메소드에서 다음

MyCustomModel model = TempData["MyCustomModel"] as MyCustomModel 

을 할 수 있습니다.

관련 문제