2013-04-13 2 views
1

내가 내 인덱스보기에, 나는 사용자로부터 값 이름 속성을 고려하여 컨트롤러에보기에서 값을 전달하려면,데이터 전달은

public class Person 
{ 
    public string name { get; set; } 
    public string area { get; set; } 
} 

이제 모델 클래스 사람이 ASP.NET MVC에서 컨트롤러에 및 영역 = "foo는".I, 나는 영역 = "foo는"원하는 views.I 문제를 구글하려고 내가 지금

@using (Html.BeginForm()) 
{ 
    @Html.Label("Name") 
    @Html.TextBoxFor(m=>m.name) 

    <input type="submit" value="Name" /> 
} 

이하 등으로 사용자의 값을 가질 수있는 방법을 알고, 내가 찾지 못했습니다 해결책. 이것은 일반적인 문제입니다. 컨트롤러에서 value = "foo"와 같이 대답하지 마십시오. 제발 도와주세요 그리고 내 질문을 향상시킬 수 있도록 코멘트없이 downvote하지 마십시오. 감사합니다

답변

1

양식에 "영역"이라는 숨겨진 필드를 추가하고 값을 원하는대로 설정하십시오. 양식이 게시되면 숨겨진 필드 값도 작업 방법에 게시됩니다.

@using (Html.BeginForm()) 
{ 
    @Html.Label("Name") 
    @Html.TextBoxFor(m=>m.name) 
    <input type="hidden" name="area" value="foo" /> 
    <input type="submit" value="Name" /> 
} 

지금 당신은 당신의 HttpPost 액션 메소드이 얻을 수

[HttpPost] 
public ActionResult Create(Person model) 
{ 
    // check for model.name and model.area. 
    // TO DO : Save and redirect 
} 

당신은 사람들이 항상 몇 가지 도구 불을 지르고 같은 정도를 사용하여 브라우저에서 숨겨진 필드 값을 업데이트 할 수 있음을 유의하십시오. 민감한 정보 인 경우 () 쇼핑 포털에있는 상품의 가격은입니다. 클라이언트에서 이와 같이 읽지 마십시오. 서버에서 읽으십시오.

+1

덕분에 ... –

+0

실제로,보기에서 컨트롤러로 URL 콘텐츠를 전달해야합니다. 저에게 어떻게 할 수 있는지 안내해 주시겠습니까 –

+0

당신은 쿼리 스트링 값을 의미합니까? – Shyju

관련 문제