더북(TheBook)

2. Views 폴더에 FormPostDemo 폴더를 생성하고 Index.cshtml 뷰 페이지를 생성 후 다음과 같이 코드를 작성한다.

MVC의 뷰 페이지에서는 HTML 기반의 폼 태그를 사용해서 폼을 구성할 수 있는데 다른 경로로 데이터를 보낼 수도 있고, 다음 코드처럼 같은 페이지로 보낼 수도 있다. Submit 버튼을 클릭하면 앞서 제작한 [HttpPost] 액션 메서드가 호출되어 namecontent의 데이터가 액션 메서드와 이름이 같은 매개 변수로 전달된다. 매개 변수의 내용은 이처럼 간단한 경우에는 직접 기술해도 되고, 내용이 많아지거나 복잡해지면 모델 클래스 기반으로 묶어서 전송해도 된다. 폼 태그를 만드는 데 기본 HTML과 헬퍼 메서드를 사용하는 두 가지 방식으로 표현되었다. 헬퍼 메서드에 대한 자세한 내용은 다음 장에서 설명하겠다.

▼  /Views/FormPostDemo/Index.cshtml

@{
  Layout = null;
}

<h2>폼 데이터 전송</h2>

<h3>HTML 태그로 구현</h3>
<form action=”/FormPostDemo/Index” method=“post”>
  이름: <input type=“text” name=“name” value=”” /><br />
  내용: <input type=“text” name=“content” value=”” /><br />
  
  <input type=“submit” value=“전송” />
</form>

<h3>헬퍼 메서드로 구현</h3>
@using (Html.BeginForm())
{
  @Html.Label(“이름: “)
  @Html.TextBox(“name”)<br />
  @Html.Label(“내용: “)
  @Html.TextBox(“content”)<br />
   
  <input type=“submit” value=“전송” />
}

<hr />

<p>@ViewBag.Result</p>

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.