Phantom Programming 팬텀 프로그래밍
  • ASP.NET 기초 Razor Pages에서 C# 작성하기
    2024년 11월 19일 19시 17분 34초에 업로드 된 글입니다.
    작성자: Devrun
    반응형

     

    ASP.NET의 Razor Pages에 대한 주제로 오늘부터 새로운 카테고리를 작성해 나갈 것이다. 아마 국내에서 C#과 ASP.NET을 다루는 개발자는 손에 꼽을 것이다. 그러한 유니크한 개발자가 되고 싶다면 반드시 배워야한다. 1:10000으로 경쟁을 할 것인가 1:3으로 경쟁을 할 것인가와 비슷한 수준이라고 본다. 이유는 간단하다. 코딩 강사라는 것들이 가르치는 것은 초보자 입장에서 뭔가 만들어지는 것을 보아야 재미가 있기 때문이며, 전공자들은 View보다 콘솔이 더 익숙하기 때문에 대학에서만 가르치고, 어디서도 배우기 힘든 분야이기 때문이다. 

     

    내가 블로그를 써가면서 하나 장담할 수 있는 것은 ASP.NET은 실력만 된다면 해외로 떠날 수 있는 기회가 쉽게 주어질 것이라는 것이다. 해외에도 없다 ㅋㅋ 그럼 본론으로

     

    1. Razor Pages에서 C#을 작성하는 방법

    Razor Pages가 뭐냐고 궁금할 것이다. Razor Pages는 ASP.NET Core에서 제공하는 간단하고 직관적인 웹 어플리케이 개발 아키텍처라고 한다. 또한 페이지 기반 접근 방식을 사용하여 개발자가 코드와 뷰를 더 가깝게 관리할 수 있다.

      • 페이지 중심 구조
      • 단순한 파일 구조
        • View Page: HTML과 C#을 함께 사용해 동적인 콘텐츠 작성, .cshtml 확장자를 가짐
        • Page Model: Logic 처리를 담당

    (노션에서 가져와서 조금 정리가 안된다...)

     

    C# 코드를 어떻게 작성할까?

    Razor 문법의 핵심은 @ 기호를 사용하는 것이다. 아래 코드를 보자

    <h1>@DateTime.Now.ToShortString()</h1>

     

    어떤가? JS로 날짜 구하는 것보다 더 간단하지 않음? 이게 ASP.NET의 핵심이다. 만약 연산이나 공백을 포함해야하는 경우에는 ()를 사용해서 사용한다.

    <p>Last week this time: @(DateTime.Now - TimeSpan.FromDays(7))</p>

     

    위 코드는 현재 시간에서 7일을 뺀 날짜를 계산하는 것이다. 즉 지난주를 표시할 때 사용한다.

     

    위 뿐만이 아니라 코드 블록을 사용할 수도 있다.

    @{
        int num1 = 6;
        int num2 = 4;
        int result = num1 + num2;
    }
    
    <h3>The result of @num1 + @num2 is: @result</h3>

     

    위와 같이 코드를 블록으로 설정해서 사용할 수도 있다. JS를 사용할 때와 비슷하다고 보면 된다.

        <script>
            // JavaScript 변수 선언 및 계산
            const num1 = 6;
            const num2 = 4;
            const result = num1 + num2;
    
            // 동적으로 결과를 출력
            document.write(`<h3>The result of ${num1} + ${num2} is: ${result}</h3>`);
        </script>

     

    겁나 귀찮지 않은가? 이해 비해선 매우 단순하게 만들 수 있다.

     

    이 글을 쓰고 있는 필자는 손가락이 매일 아프다. 그리고 목디스크도 터진 경험으로 후유증이 심하다. (학부 생활 때 밥만먹고 코딩해왔다... 그 때 코딩을 안했으면 지금 나의 2세가 학교를 갔을 것이다...)

     

    오늘은 이렇게 매우 간단하게 코드를 C#에서 어떻게 사용하는가에 대해서 배워보았다. 다음에는 또 다른 걸 가지고 오겠다.

    반응형
    댓글