asp.net-mvc – 使用类似MvcContrib Grid的东西在代码可读性方面倒退了吗?
发布时间:2020-09-25 22:03:09 所属栏目:asp.Net 来源:互联网
导读:我的意思是,现在我们已经对您的代码中分离你的 HTML标记尽可能利用现代模板引擎的所有这种运动(在旧时代的程序员通常只是不停地串联在 PHP中,这是可怕的字符串.) 然后我看一下同事生成一个html表的代码,它看起来像: % Html.Grid(Model).Columns(column = { c
|
我的意思是,现在我们已经对您的代码中分离你的 HTML标记尽可能利用现代模板引擎的所有这种运动(在旧时代的程序员通常只是不停地串联在 PHP中,这是可怕的字符串.) 然后我看一下同事生成一个html表的代码,它看起来像: <% Html.Grid(Model).Columns(column => {
column.For(x => Html.ActionLink("Edit","Edit",new { id = x.Id })).Attributes(width => "30px").DoNotEncode();
column.For(x => Html.ActionLink("Delete","Delete",new { id = x.Id },new { @class = "delete" })).Attributes(width => "95px").DoNotEncode();
column.For(x => x.Id).Named("Code");
column.For(x => x.Name).Named("Name").HeaderAttributes(align => "left");
column.For(x => x.CPF).Named("CPF");
})
.Attributes(width => "100%",border => "0",cellpadding => "0",cellspacing => "0",@class => "data-table")
.Empty("No users found!")
.RowStart(row => string.Format("<tr class='row{0}'>",row.IsAlternate ? "-alternating" : ""))
.Render();
%>
他认为这很棒,我认为这很难看,所以我想知道更多人的意见. 解决方法对于设计师而言,它在代码可读性方面倒退了一步,这里没有两个意见.从开发人员的角度来看,这将取决于.有些人喜欢别人没有.就个人而言,我更喜欢它,而不是更标准的foreach技术.为什么? 你从一个简单的< table>开始和一个foreach.然后一些用户说你需要处理交替的行样式.首先添加ifs.然后另一个用户说您需要能够按给定列进行排序.你用另一个ifs处理这个问题.第三个用户要求您处理paging =>在你看来还有另一个ifs和foreach.你最终得到spaghetti. 结论:使用合适的枪用于正确的目标.对于简单的表,传统方法很好地工作,但是一旦你开始做更高级的东西使用帮助器. (编辑:日照站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- MVC学习二:基础语法
- 如何在ASP.NET MVC应用程序中本地化Controller名称和操作?
- 如何在Asp.Net Mvc中进行Basecamp风格的账户?
- asp.net-mvc-3 – outputcache mvc3只注销了用户缓存
- ASP.net Substitution 页面缓存而部分不缓存的实现方法
- asp.net-mvc – 在MVC4中绑定的正确方法
- asp.net-mvc – 在IIS 5.1上部署ASP.NET MVC(Windows XP)
- 将变量从ASP.net传递给JavaScript
- asp.net – 在调用异步方法时不使用等待来防止死锁
- asp.net – 从我的GridView行返回一个对象
