2. Views 폴더에 CommunityCamp 폴더를 생성한다. 이곳에 Index.cshtml이라는 이름으로 MVC 뷰 페이지를 생성하고, 다음과 같이 코드를 작성한다. 두 커뮤니티 사이트에 대한 정보를 문자열로 조회해 참여자와 대기자 리스트를 출력하도록 설정했다. 선착순 15명까지만 등록자로 리스트를 출력하고, 나머지는 대기자 리스트에 출력하는 코드다.

    ▼  /Views/CommunityCamp/Index.cshtml

    @using DotNetNote.Models
    
    @{
      ViewData["Title"] = "커뮤니티 캠프";
    }
    
    @model List<CommunityCampJoinMember>
    
    <h1>ASP.NET Core 1.0 학습용 데모 사이트입니다.</h1>
    
    <h2>참가자 리스트</h2>
    
    <a asp-controller=“CommunityCamp” asp-action=“Create”
     class=“btn btn-info”>참가 등록하기</a>
    <hr />
    
    @<div class=“lead”>
      참여 등록이 마감되었습니다.
      만약, 참여자 중 취소하시는 분들이 계시면,
      대기자 리스트 분에게 연락드리도록 하겠습니다.
      본 사이트는 행사 전에 DB 완전 초기화될 것입니다.
      감사합니다.
    </div>
    <hr />@
    
    <div class=“row”>
      <div class=“col-md-6”>
          <div class=“panel panel-default”>
              <div class=“panel-heading”>ASP.NET Korea 참여자 리스트</div>
              <div class=“panel-body”>
                  @foreach (var aspnetkorea in Model.Where(m => m.CommunityName
          == “ASP.NET Korea”).OrderBy(m => m.Id).Take(15))
                  {
                      <div class=“col-md-3”>
                          @aspnetkorea.Name
                          <a asp-controller=“CommunityCamp” asp-action=“Delete”
                             title=“취소”>
                              <i class=“glyphicon glyphicon-remove-sign”></i>
                          </a>
                      </div>
                  }
              </div>
          </div>
      </div>
      <div class=“col-md-6”>
          <div class=“panel panel-default”>
              <div class=“panel-heading”>
                  Taeyo.NET 참여자 리스트
              </div>
              <div class=“panel-body”>
                  @foreach (var taeyonetkorea in Model.Where(m => m.CommunityName
          == “Taeyo.NET”).OrderBy(m => m.Id).Take(15))
                  {
                      <div class=“col-md-3”>
                          @taeyonetkorea.Name
                          <a asp-controller=“CommunityCamp” asp-action=“Delete”
                             title=“취소”>
                              <i class=“glyphicon glyphicon-remove-sign”></i>
                          </a>
                      </div>
                  }
              </div>
          </div>
      </div>
    </div>
    <div class=“row”>
      <div class=“col-md-6”>
          <div class=“panel panel-default”>
              <div class=“panel-heading”>ASP.NET Korea 대기자 리스트</div>
              <div class=“panel-body”>
                  @foreach (var aspnetkorea in Model.Where(m => m.CommunityName
          == “ASP.NET Korea”).OrderBy(m => m.Id).Skip(15).Take(25))
                  {
                      <div class=“col-md-3”>
                          @{
                              var aspName = aspnetkorea.Name[0].ToString() + ““
                                  + aspnetkorea.Name.Substring(
                                      aspnetkorea.Name.Length - 1);
                          }
                          @aspName
                          <a asp-controller=“CommunityCamp” asp-action=“Delete”
                             title=“취소”>
                              <i class=“glyphicon glyphicon-remove-sign”></i>
                          </a>
                      </div>
                              }
              </div>
          </div>
      </div>
      <div class=“col-md-6”>
          <div class=“panel panel-default”>
              <div class=“panel-heading”>
                  Taeyo.NET 대기자 리스트
              </div>
              <div class=“panel-body”>
                  @foreach (var taeyonetkorea in Model.Where(m => m.CommunityName
          == “Taeyo.NET”).OrderBy(m => m.Id).Skip(15).Take(25))
                  {
                      <div class=“col-md-3”>
                          @{
                              var taeyoName = taeyonetkorea.Name[0].ToString() + “” +
                                  taeyonetkorea.Name.Substring(
                                      taeyonetkorea.Name.Length - 1);
                          }
                          @taeyoName
                          <a asp-controller=“CommunityCamp” asp-action=“Delete”
                              title=“취소”>
                              <i class=“glyphicon glyphicon-remove-sign”></i>
                          </a>
                      </div>
                              }
              </div>
          </div>
      </div>
    </div>
    
    @section Scripts {
      @if (TempData[“Message”] != null)
      {
          <script>
              toastr.info(’@TempData[“Message”]’);
          </script>
      }
    }
    

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