2011-01-13 1 views

답변

1

FormCollection에는 뷰 형식의 모든 값이 있습니다. 색인 또는 제어 이름으로 모음을 검색 할 수 있습니다.

0

예 양식에 method="POST"을 사용할 수 있습니다. 그러면 모든 값이 쿼리 본문이 아닌 POST 본문을 따라 전송됩니다. 예 : 당신이 중 하나를 기본 모델 바인더 덕분에 그 값을 다시 가져 오기 위해 강력한 형식의 뷰 모델을 사용 (권장) 수

<% using (Html.BeginForm()) { %> 
    ... some input fields 
<% } %> 

그리고 당신의 컨트롤러 액션에서

:

[HttpPost] 
public ActionResult Index(MyViewModel model) 
{ 
    ... 
} 

또는에서 그들을 가져 요청 :

[HttpPost] 
public ActionResult Index() 
{ 
    var param1 = Request["param1"]; 
    var param2 = Request["param2"]; 
    ... 
} 
+0

'Request []'객체에 액세스하는 데 특히 잘못된 것은 없지만 [FormCollection] (http://msdn.microsoft.com/en-us/library/system.web.mvc. formcollection.aspx)는 MVC의 모범 사례와 더 많은 연관이 있습니다. –

2

이 mpminnich의 응답을 명확히하기 위해, 당신은 작업 매개 변수로 FormCollection을 받아 들일 수 :

public ActionResult Add(FormCollectiom form) { 
    var foo = form["fieldName"]; 
    ... 
} 
+0

감사합니다. 나는 시각적으로 훨씬 더 좋을 것 같아. :-) –

관련 문제