请保持Asp.net MVC中View的可读性
2011-04-19 16:51 zhoujie 阅读(1838) 评论(6) 编辑 收藏 举报MVC中的View既可以写HTML代码,也可以写C#代码,代码的可读性一不小心就会变得很差。
在下做过一个项目,后端数据库用XML保存用户提交的自定义数据,前端需要解析XML数据,然后输出我们的HTML展现给用户一个漂亮的界面。第一次做的时候没感觉可读性很差,因为XML的结构已经了然于胸,于是在View中加入了大量的For,if逻辑,很快就交差了,领导也很满意。没想到3个月以后,领导要求做一些改动,这下可傻眼了,当时写了些什么天书啊,当时的数据结构早已忘得一干二净。可想而知,自己又付出了多少劳动,浪费了多少脑细胞。
对我来说像下面这种简单的数据邦定语法,还是可以接受的。
<label for="username">Username:</label>
<%= Html.TextBox("username") %>
<%= Html.ValidationMessage("username") %>
</p>
<p>
<label for="email">Email:</label>
<%= Html.TextBox("email") %>
<%= Html.ValidationMessage("email") %>
</p>
这需要我们将大部分逻辑放在Controller里面,构造出数据Model,然后邦定到View上。因为数据模型一般是不会改变的,View却是经常变的。
必要时写一些HTML的Helper方法也可以,总之一句话尽量保持view具有良好的可读性 。什么是可读性良好?在我看来就是一段一段的,每一段负责自己的事情,将来维护时可以迅速的定位到这一段,然后快速修改完交差。不能是一砣没有结构性,牵一发而动全身。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架