안녕하세요 코북입니다. Razor구문의 <text> 태그를 왜 사용하는지 의문이 들어 자료 조사하고 예시를 만들어 봤습니다. 이해가 잘 되지 않아 여러 번 읽어봤는데, 원문의 Razor 코드 블럭 부분을 전체적으로 읽어보면 더 큰 도움이 될 것 같습니다.
http://www.egocube.pe.kr/translation/content/asp-net-core-mvc-views/201608310001
Razor 코드 블럭은 @ 기호로 시작하고 { } 로 둘러싸입니다. 표현식과는 다르게 코드 블럭 내부에 작성된 C# 코드는 렌더되지 않습니다. Razor 페이지의 모든 코드 블럭과 표현식들은 동일한 범위(Scope)를 공유하며 작성된 순서대로 정의됩니다. 즉, 특정 코드 블럭에서 선언된 변수를 그 이후의 코드 블럭이나 표현식에서 접근할 수 있습니다.
코드 블럭 내부에서 명시적으로 HTML을 렌더하기 위한 하위 영역을 정의하려면, Razor <text> 태그로 렌더될 문자들을 둘러싸면 됩니다.
<label>
<input type="radio" value="Y" class = "input" name = "coti"
@if (cobook.tistory == "Y") {<text> checked </text>}
onclick = "javascript:changeRadio();"/> 사용
</label>
이 방법은 주로 HTML 태그로 감싸여지지 않은 HTML을 렌더하고자 할 때 사용됩니다. 이 경우, HTML 태그나 Razor 태그로 HTML을 감싸지 않으면 Razor 런타임 오류가 발생합니다.
'ASP.NET' 카테고리의 다른 글
[C#/ASP.NET] 폼 인증 방식으로 로그인 관리 및 체크하기 (0) | 2023.09.19 |
---|---|
[C#/ASP.NET] 현재 페이지 Url 가져오기 (Request.Url) (0) | 2022.03.25 |
[C#/ASP.NET] Server.UrlEncode() + 코드 리뷰 (0) | 2022.03.22 |
[error/C#] error CS0122 : 보호 수준 때문에 'Member'에 액세스 할 수 없습니다. (0) | 2022.03.10 |