代码改变世界

请保持Asp.net MVC中View的可读性

  zhoujie  阅读(1838)  评论(6编辑  收藏  举报

 MVC中的View既可以写HTML代码,也可以写C#代码,代码的可读性一不小心就会变得很差。

 在下做过一个项目,后端数据库用XML保存用户提交的自定义数据,前端需要解析XML数据,然后输出我们的HTML展现给用户一个漂亮的界面。第一次做的时候没感觉可读性很差,因为XML的结构已经了然于胸,于是在View中加入了大量的For,if逻辑,很快就交差了,领导也很满意。没想到3个月以后,领导要求做一些改动,这下可傻眼了,当时写了些什么天书啊,当时的数据结构早已忘得一干二净。可想而知,自己又付出了多少劳动,浪费了多少脑细胞。

对我来说像下面这种简单的数据邦定语法,还是可以接受的。

复制代码
                <p>
                    
<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具有良好的可读性 。什么是可读性良好?在我看来就是一段一段的,每一段负责自己的事情,将来维护时可以迅速的定位到这一段,然后快速修改完交差。不能是一砣没有结构性,牵一发而动全身。

 

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示