작성
·
220
0
C# 코드랑 razor component의 코드부분인
@code { ... } 부분은 서로 어떤식으로 연결되어 있는건가요?
@inject CounterState 를 하면 C#코드로 만들어진 CounterState가 인스턴스화되고
@code {...} 부분이랑 합쳐지는건가요? 어떻게 서로 유기적으로 작동하는건지 의문이네요.
C# 코드랑 @code{...] 부분에 같은 이름의 변수를 생성해도 문제 없이 작동하길래 의문이 생겨서 여쭤봅니다
답변 1
0
(예전에 얼핏 구글에서 본 기억에 의존하면)
Razor Template Engine이 Razor 파일을 쭉 파싱해서
C# 코드를 동적으로 생성한 다음
기존의 코드와 합치는 형태로 동작하는 것으로 알고 있습니다.
변수 이름이 겹쳐도 되는 이유에 대해서는 자세히 모르겠지만
namespace라거나 아니면 변수 이름을 바꿔준다거나,
하는 방법을 채택하지 않았을까 싶습니다.