asp.net - @{...} 中的代码是在表单提交时运行还是一直运行
问题描述
我是 ASP.NET 的新手,目前正在查看w3school
.
我遇到的我不明白的是这段代码:
@{
var imagePath="";
if( Request["Choice"] != null)
{imagePath="images/" + Request["Choice"];}
}
<!DOCTYPE html>
<html>
<body>
<h1>Display Images</h1>
<form method="post" action="">
I want to see:
<select name="Choice">
<option value="Pic1.jpg">Photo 1</option>
<option value="Pic2.jpg">Photo 2</option>
<option value="Pic3.jpg">Photo 3</option>
</select>
<input type="submit" value="Submit">
@if(imagePath != "")
{
<p>
<img src="@imagePath" alt="Sample">
</p>
}
</form>
</body>
</html>
让我困惑的是这部分@if(imagePath != "")
我的问题是那部分代码是否一直运行(所以它会在每个 Xms 中通过页面内的所有代码)还是在用户单击时运行submit
此外,如果它在用户单击提交时运行,它如何知道要运行代码的哪一部分,因为该代码action=""
是空的,所以它如何知道它是否需要运行第一个块或第二个块