1、Razor注释:@* *@的格式
2、Razor通过4种标记方式来确定指定区域的代码是服务器端代码,即在html中插入C#代码:
- 行内(Inline)标记,比如:
@ViewBag.Name
- 单行(Single Line)标记,比如:
@{ var name = "Slark";} @{ Response.Write("Single Line : Name is" + name + "<br />");}
- 多行(Multi-Line)标记,比如:
@{ var name="Slack"; Response.Write("Multi-Line : Age is " + age + "<br />"); }
- Keyword(){}特殊语法,在遇到如if、for、while等具有"keyword(){}"形式的C#代码结构时,Razor标记可以写成"@keyword(){}"这样的特殊形式。
这个不是强制性的,比如:
@if (1 > 2) { Response.Write("1 > 2 <br />"); } else { Response.Write("1 <= 2 <br />"); } @for (int i = 0; i < 3; i++) { Response.Write(i + " <br />"); }
3、在Razor标记中写入文本,即在服务器代码里嵌入html代码,一共三种方法:
- 在Razor标记的代码中如果有成对的html标记,则这个标记及其内容会被当作普通文本输出。如上面的 <p>var name2 = "Slark";</p>
- 在Razor标记的代码中如果有"@:",则其后的一行代码会被当作普通文本输出。如上面的 @:var name3 = "Slark";<br />
- 在Razor标记的代码中如果有<text>...</text>标记,则其内容会被当作普通文本输出。如上面的 <text> var name4 = "Slark";<br /> var name5 = "Slark"; </text>
比如:
@{ <p>var name2 = "Slark";</p> @:var name3 = "Slark";<br /> <text> var name4 = "Slark";<br /> var name5 = "Slark"; </text> }
原文:http://www.cnblogs.com/slark/p/mvc5-ef6-get-started-razor.html