MVC 使用cshtml的一些基础知识-和相关整理
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MVC 使用cshtml的一些基础知识-和相关整理,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1543字,纯文字阅读大概需要3分钟。
内容图文
首先在认识cshtml之前,先要了解一下Razor视图引擎
如果对此有疑问的话可以借鉴
博客园博文:http://kb.cnblogs.com/page/96883/ 或
博客博文:http://www.cnblogs.com/dengxinglin/p/3352078.html
上面都讲解了Razor 以及cshtml的使用语法
这里呢,我们只是整理一下大家熟悉的asp.net和cshtml之间容易出现错误的书写方法
从aspx转到chshtml还是有很多要适应的地方的,本帖是个人学习笔记帖不断更新。每天开着本帖编程。
按第一个有意义的编译错误的首字母排序,便于查找:
Cannot implicitly convert type ‘void‘ to ‘object‘
错误:@Html.RenderPartial("_XXXX", Model);
正确:@{Html.RenderPartial("_XXXX", Model);}
其他:这个写法深刻表明了“<% xxx;%>”这样的代码变成了@{xxx;}。
不过感觉这个写法很丑,是否有更好的?
‘object‘: type used in a using statement must be implicitly convertible to ‘System.IDisposable‘
错误:@using "...";
正确:@using ... ;(把引号去掉)
说明:可以这样理解,这里的东西除了多了个@之外,都和cs文件中的语法一样了。
The name ‘i‘ does not exist in the current context
错误:
@{
<table>
for (int i = 0; i <= 15; i++)
{
<tr>
//这里用到了i
</tr>
}
</table>
}
正确:
<table>
@for (int i = 0; i <= 15; i++)
{
<tr>
//这里用到了i
</tr>
}
</table>
任何<>都将从C#语法变到html语法,而@{}则相反。
-----------------------------------------------------------------------------------------------
不好:(也能运行)
<td>
@foreach (var user in Roles.GetUsersInRole((string)ViewBag.OldRole))
{
<text>@user<br /></text>
}
</td>
好:
<td>
@foreach (var user in Roles.GetUsersInRole((string)ViewBag.OldRole))
{
@user<br />
}
</td>
说明:@除了能把语境从html变成cs,也能做相反的变化。这样代码的简洁性就好多了。
说明:本以为Razor想把“Html中镶嵌C#”变成"C#中镶嵌Html"(类似Helper),看来也不尽然。后者的好处是可以被测试,而前者不行。在推出Razor的时候官网曾经提到要让Razor可测试,不知道如何实现,拭目以待。
原文:http://www.cnblogs.com/zlero/p/4346230.html
内容总结
以上是互联网集市为您收集整理的MVC 使用cshtml的一些基础知识-和相关整理全部内容,希望文章能够帮你解决MVC 使用cshtml的一些基础知识-和相关整理所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。