MVC--Razor(2)
本站寻求有缘人接手,详细了解请联系站长QQ1493399855
一,bool类型
<!DOCTYPE html><html><head><meta name="viewport" content="width=device-width" /><title>Index</title></head><body>@{ bool isOK = true;}<div style="color:@(isOK ? "red" : "green")">rupeng.com</div><br /><div style="color:@(isOK ? "green" : "red")">rupeng.com</div><br /></body>
</html>
效果如下:用到bool变量之前,需要给个true值护着false值,否则会出错。
html标签的任何属性的值如果是C#的值,如果是bool类型的值,如果是值是false,则不会渲染这个属性,如果值是true,则会渲染成“属性值=属性名”,比如:
@{bool b1 = true;bool b2 = false;
}<aaa herf="/1.html" checked="@b1" ac="@b2">aaa</aaa>
二,链接
<!DOCTYPE html><html><head><meta name="viewport" content="width=device-width" /><title>Index</title></head><body>@{ string s1 = "<a href = 'www.rupeng.com'>rupeng</a>";}<br />@s1<br/>@Html.Raw(s1)<br />@{bool b1 = true ; }<span hello="@b1">88888888888</span><br />@this.GetType().Assembly.Location</body>
</html>
cshtml是编译生成的一个动态的程序集,在cshtml中写 @this.GetType().Assembly.Location 可以拿到编译生成的程序集的dll文件的路径,反编译可以看到cshtml最终生成的一个类,类中就是在拼接html,类是继承自WebViewPage,后续用的@Modell,@Html等都是WebViewPage类中的成员。
raw可以讲字符形式的链接转变的真正的链接。
效果如下: