반응형
레이저에서 로컬 변수를 선언하는 방법은 무엇입니까?
저는 asp.net mvc 3에서 웹 애플리케이션을 개발하고 있습니다.저는 그것이 매우 생소합니다.면도기를 사용한 뷰에서 몇 가지 지역 변수를 선언하고 전체 페이지에 걸쳐 사용하고자 합니다.이것이 어떻게 행해지는가?
다음과 같은 작업을 수행할 수 있다는 것은 다소 사소한 것처럼 보입니다.
@bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);
@if (isUserConnected)
{ // meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
하지만 이것은 효과가 없습니다.이것이 가능합니까?
당신은 꽤 가까웠던 것 같아요, 이것을 시도해 보세요.
@{bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);}
@if (isUserConnected)
{ // meaning that the viewing user has not been saved so continue
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join here</a>
</div>
}
변수가 같은 블록에 있어야 한다고 생각합니다.
@{
bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);
if (isUserConnected)
{
// meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
}
다음을 사용할 수도 있습니다.
@if(string.IsNullOrEmpty(Model.CreatorFullName))
{
...your code...
}
코드에 변수가 필요하지 않습니다.
OP의 문제에 대한 직접적인 대답은 아니지만, 당신에게도 도움이 될 수 있습니다.범위 내의 일부 HTML 옆에 로컬 변수를 문제 없이 선언할 수 있습니다.
@foreach (var item in Model.Stuff)
{
var file = item.MoreStuff.FirstOrDefault();
<li><a href="@item.Source">@file.Name</a></li>
}
코드 루프에 따라 증가하는 int 변수를 찾고 있는 경우 다음과 같은 변수를 사용할 수 있습니다.
@{
int counter = 1;
foreach (var item in Model.Stuff) {
... some code ...
counter = counter + 1;
}
}
전체 페이지에서 변수에 액세스할 수 있도록 하려면 파일의 맨 위에 변수를 정의하는 것이 좋습니다. (암묵적 유형 또는 명시적 유형을 사용할 수 있습니다.)
@{
// implicit type
var something1 = "something";
// explicit type
string something2 = "something";
}
<div>@something1</div> @*display first variable*@
<div>@something2</div> @*display second variable*@
당신은 모든 것을 블록에 넣고 그 블록에 원하는 코드를 쉽게 쓸 수 있습니다. 바로 아래 코드입니다.
@{
bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);
if (isUserConnected)
{ // meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
}
그것은 당신이 처음에 더 깨끗한 코드를 가질 수 있도록 도와주며 또한 당신의 페이지가 여러 번 다른 코드 블록을 로드하는 것을 막을 수 있습니다.
언급URL : https://stackoverflow.com/questions/6601715/how-to-declare-a-local-variable-in-razor
반응형
'programing' 카테고리의 다른 글
계산된 속성이 변경되어도 부트스트랩 구성 요소가 변경되지 않음 (0) | 2023.06.24 |
---|---|
H2가 내 Spring Boot 앱에서 테이블을 생성/업데이트하지 않습니다.내 엔티티에 문제가 있나요? (0) | 2023.06.24 |
I 컨트롤 핫픽스의 Mongo 오류 (0) | 2023.06.24 |
OpenPyXl을 사용하여 Excel 워크북의 값 범위를 지우는 방법 (0) | 2023.06.24 |
Mongoose 고유 유효성 검사 오류 유형 (0) | 2023.06.19 |