면도기 구문
ASP.NET Razor - C# 및 VB 코드 구문
Razor는 C#(C 샤프)과 VB(Visual Basic)를 모두 지원합니다.
기본 Razor C# 구문 규칙
- Razor 코드 블록은 @{ ... }로 묶입니다.
- 인라인 표현식(변수 및 함수)은 @로 시작합니다.
- 코드 문은 세미콜론으로 끝납니다.
- 변수 사용 var 키워드 선언
- 문자열은 따옴표로 묶습니다.
- C# 코드는 대소문자를 구분합니다.
C# 파일 확장자는 .cshtml
Example
<html> <body> <!-- Single statement block --> @{ var myMessage = "Hello World"; } <!-- Inline expression or variable --> <p>The value of myMessage is: @myMessage</p> <!-- Multi-statement block --> @{ var greeting = "Welcome to our site!"; var weekDay = DateTime.Now.DayOfWeek; var greetingMessage = greeting + " Here in Huston it is: " + weekDay; } <p>The greeting is: @greetingMessage</p> </body> </html>
예제 실행»
온라인을 보려면 "예제 실행" 버튼을 클릭하세요. 예
Main Razor VB 구문 규칙
- Razor 코드 블록은 @Code ... 끝 코드에 포함되어 있습니다.
- 인라인 식(변수 및 함수)은 @
- 변수로 시작합니다. Dim 키워드를 사용하여 선언합니다.
- 따옴표로 묶인 문자열
- VB 코드는 대소문자를 구분하지 않습니다.
- VB 파일의 확장자는 .vbhtml
Example
<!-- Single statement block --> @Code dim myMessage = "Hello World" End Code <!-- Inline expression or variable --> <p>The value of myMessage is: @myMessage</p> <!-- Multi-statement block --> @Code dim greeting = "Welcome to our site!" dim weekDay = DateTime.Now.DayOfWeek dim greetingMessage = greeting & " Here in Huston it is: " & weekDay End Code <p>The greeting is: @greetingMessage</p>
예제 실행»
온라인 예제를 보려면 "예제 실행" 버튼을 클릭하세요
어떻게 작동하나요?
Razor는 웹 페이지에 서버 코드를 포함하는 간단한 프로그래밍 구문입니다.
Razor 구문은 웹 애플리케이션 생성을 위해 특별히 설계된 Microsoft.NET 프레임워크의 일부인 ASP.NET 프레임워크를 기반으로 합니다.
Razor 구문은 모든 ASP.NET 기능을 지원하지만 초보자가 더 쉽게 배우고 전문가가 더 효율적으로 사용할 수 있는 단순화된 구문을 사용합니다.
Razor 웹 페이지는 다음 두 가지 유형의 콘텐츠가 포함된 HTML 웹 페이지로 설명될 수 있습니다. HTML 콘텐츠 및 Razor 코드.
서버가 페이지를 읽을 때 HTML 페이지를 브라우저로 보내기 전에 먼저 Razor 코드를 실행합니다. 서버에서 실행되는 코드는 서버 데이터베이스에 액세스하는 등 브라우저에서 완료할 수 없는 작업을 수행할 수 있습니다. 서버 코드는 동적 HTML 콘텐츠를 생성하여 브라우저로 보낼 수 있습니다. 브라우저 관점에서 볼 때 서버 코드에 의해 생성된 HTML은 정적 HTML 콘텐츠와 다르지 않습니다.
Razor 구문을 사용하는 ASP.NET 웹 페이지에는 특수 파일 확장자 cshtml(Razor C#) 또는 vbhtml(Razor VB)이 있습니다.
객체 사용
서버 코딩에는 객체가 포함되는 경우가 많습니다.
"날짜" 개체는 일반적인 내장 ASP.NET 개체이지만 개체는 사용자 지정 개체, 웹 페이지, 텍스트 상자, 파일, 데이터베이스 레코드 등일 수도 있습니다.
객체에는 실행 방법이 있습니다. 데이터베이스 레코드에는 "Save" 메서드가 있을 수 있고, 이미지 개체에는 "Rotate" 메서드가 있을 수 있으며, 이메일 개체에는 "Send" 메서드가 있을 수 있습니다.
객체에는 해당 특성을 설명하는 데 사용되는 속성도 있습니다. 데이터베이스 레코드에는 FirstName 및 LastName 속성이 있을 수 있습니다.
ASP.NET Date 개체에는 Now 속성(Date.Now로 작성됨)이 있고 Now 속성에는 Day 속성(Date.Now.Day로 작성됨)이 있습니다. 다음 예에서는 데이터 개체의 일부 속성에 액세스하는 방법을 보여줍니다.
Instance
<table border="1"> <tr> <th width="100px">Name</th> <td width="100px">Value</td> </tr> <tr> <td>Day</td><td>@DateTime.Now.Day</td> </tr> <tr> <td>Hour</td><td>@DateTime.Now.Hour</td> </tr> <tr> <td>Minute</td><td>@DateTime.Now.Minute</td> </tr> <tr> <td>Second</td><td>@DateTime.Now.Second</td> </tr> </td> </table>
예제 실행»
온라인 예제를 보려면 "인스턴스 실행" 버튼을 클릭하세요.
If 및 Else 조건
동적 웹 페이지의 중요한 특징은 조건에 따라 무엇을 할지 결정할 수 있다는 것입니다.
이를 수행하는 일반적인 방법은 if...else 문을 사용하는 것입니다.
Instance
@{ var txt = ""; if(DateTime.Now.Hour > 12) {txt = "Good Evening";} else {txt = "Good Morning";} } <html> <body> <p>The message is @txt</p> </body> </html>
Run Instance»
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요.
사용자 입력 읽기
동적 웹 페이지의 또 다른 중요한 기능은 사용자 입력을 읽을 수 있다는 것입니다.
Request[] 함수를 통해 입력을 읽고, IsPost 조건을 통해 입력 데이터를 전송합니다.
Example
@{ var totalMessage = ""; if(IsPost) { var num1 = Request["text1"]; var num2 = Request["text2"]; var total = num1.AsInt() + num2.AsInt(); totalMessage = "Total = " + total; } } <!DOCTYPE html> <html> <body style="background-color: beige; font-family: Verdana, Arial;"> <form action="" method="post"> <p><label for="text1">First Number:</label><br> <input type="text" name="text1"></p> <p><label for="text2">Second Number:</label><br> <input type="text" name="text2"></p> <p><input type="submit" value=" Add "></p> </form> <p>@totalMessage</p> </body> </html>
인스턴스 실행 »
온라인 인스턴스를 보려면 "인스턴스 실행" 버튼을 클릭하세요