标签:razor视图引擎基础 mvc
<1>
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
@ViewData["time"]; //可以获取ViewData传递过来的值
@DateTime.Now.ToString(); //可以直接输出一个c#变量
<p>@ViewData["time"]</p>
@for (int i = 0; i < 10; i++) //可以直接在@后面写c#代码,它会自动感应{}的闭合
{
<span>@i</span>
}
@if (ViewData.Count > 0)
{
<p>ViewData是有数据的</p>
}
else
{
<p>ViewData没有数据</p>
}
@{
//这个@{} 我们称之为Razor的一个语句块
int j = 10;
j++;
<p>@j</p> //输出11
}
<!-----------------------没有经过编码化了的Html代码------------------------------->
@{
//这里是弹出一个窗体,窗体的文本内容是"Dome"
<script type="text/jscript">alert('Dome')</script>
}
<!----------------------------编码化了的Html代码--------------------------------->
@{
string str="<script>alert('123')</script>" ;
<p>@str</p> //这里输出的<script>alert('123')</script>这段代码,而不是弹出一个窗体了。说明这段代码已经被编码化了
}
<!--假如说我现在就是想在前台页面输出一些Html标签,或一些代码,就想让它原封不动的去执行那段代码,比如说我现在就想给一个Div标签放到页面去,怎么办呢,以下三种方法都可以-->
@Html.Raw("<script>alert('中国')</script>") //弹出一个窗体,窗体的内容是“中国”
@(new HtmlString("<script>alert('德国')</script>")) //弹出一个窗体,窗体的内容是“德国”
@(new MvcHtmlString("<script>alert('美国')</script>")) //弹出一个窗体,窗体的内容是“美国”
<!------------------------Razor引擎的数据类型转换------------------------->
@{
string s = "123";
<p>@s.IsInt() </p> //IsInt是检查s这个字符串是否可以转换成int类型:这里输出True
<p>@s.AsInt()</p> // AsInt是将s这个字符串转换成int类型
//当然除了IsInt()外还有IsFloat(),IsDecimal(),IsDateTime(),IsBool()
//对应的---------------AsFloat(),AsDecimal(),AsDateTime(),AsBool()
int a = 123;
<p>@a.ToString()</p> //将int类型转换成字符串
}
</div>
</body>
</html>
标签:razor视图引擎基础 mvc
原文地址:http://blog.csdn.net/fanbin168/article/details/39433723