随笔分类 -  Refactoring

摘要:学习与使用angularjs这么久,觉得javascript也可以重构。 如下面这段代码,是angularjs拿到数据之后,使用 $index来进行分列呈现在html之上。 以上高亮部分都是相同的,我们可以把它抽取出来: 再写一个方法来对append方法进行封装: 阅读全文
posted @ 2020-07-31 08:06 Insus.NET 阅读(204) 评论(0) 推荐(0) 编辑
摘要:下面2个service中,方法体均一样。只是其中service名,参数和url路径不一样。 原因是曾经对项目升级或是重构留下来的结果。 由于程序中N多处地方有引用,又不能合并它,删除更不用说了。 因为,Insus.NET为了让其更好维护,因此写了另外一个Service来进行重构它们: 好了,博文中最 阅读全文
posted @ 2020-03-30 15:05 Insus.NET 阅读(442) 评论(0) 推荐(0) 编辑
摘要:审视ASP.NET MVC代码时,发现一些代码冗余: 3处高亮的代码都一样,只是在不相同的ActionResult的Action内。 现在,我们可以把这3部分的代码抽取出来: private Transportation t = new Transportation { Controller = " 阅读全文
posted @ 2020-03-09 11:31 Insus.NET 阅读(625) 评论(0) 推荐(0) 编辑
摘要:C#有一个关键词yield,简化遍历操作实现的语法糖。 下面Insus.NET使用例子来说明,就拿昨晚的一篇《从字符串数组中把数字的元素找出来》 http://www.cnblogs.com/insus/p/8001026.html 其中有一段控制台程序: 上图中的#17行代码至#29行代码。按照面 阅读全文
posted @ 2017-12-08 09:19 Insus.NET 阅读(553) 评论(0) 推荐(2) 编辑
摘要:以前Insus.NET有在博客上有写过一篇《在程序中使用Cookie集合》http://www.cnblogs.com/insus/archive/2011/05/25/2055531.html 昨天Insus.NET有在命名用这方法的专项中,进行改写与优化。把Cookie类抽出并独立起来。 pri 阅读全文
posted @ 2017-10-12 10:03 Insus.NET 阅读(944) 评论(0) 推荐(1) 编辑
摘要:需要要视图中Razor语法,循环产生一些html代码。产生后的html是这样的: <li data-transition="fade" data-slotamount="7" data-masterspeed="1500"> <img src="~/Content/img/slider-images 阅读全文
posted @ 2016-05-16 14:27 Insus.NET 阅读(2498) 评论(0) 推荐(2) 编辑
摘要:这个小功能,如果是算此次,已经是第5次修改了。可以从这里看到前4次:V1, http://www.cnblogs.com/insus/archive/2011/10/17/2215637.html V2, http://www.cnblogs.com/insus/archive/2011/10/18 阅读全文
posted @ 2016-05-11 14:05 Insus.NET 阅读(604) 评论(0) 推荐(1) 编辑
摘要:昨天有续写一个练习《输入数字动态创建行(二)》http://www.cnblogs.com/insus/p/4916260.html,最终是需要把数据存入数据库中。在循环ASP:Table时,我们需要去除表第一行表头。当时Insus.NET的做法,是使用for来实现:改变之后,使用GetRowInd... 阅读全文
posted @ 2015-10-29 08:52 Insus.NET 阅读(1077) 评论(0) 推荐(1) 编辑
摘要:这段时间开发ASP.NETMVC应用程序,从数据库获取数据之后,需要把记录转换为数据集在视图中显示。我们需要把DataTable转换为List或者DataRow转换为T。本篇中可以学习到相关的知识,数据库方面,创建表,添加数据,存储过程等。MVC方面,创建model,创建Entity,Utility... 阅读全文
posted @ 2015-07-13 16:43 Insus.NET 阅读(2138) 评论(0) 推荐(2) 编辑
摘要:Insus.NET在ASP.NET MVC专案中,实现了图片管理,上传,预览,显示,删除等功能,还差一个功能,就是更新图片的功能,那这次来完成它。你可以先参考前2篇《ASP.NET MVC图片管理(上传,预览与显示)》http://www.cnblogs.com/insus/p/4620420.ht... 阅读全文
posted @ 2015-07-11 15:01 Insus.NET 阅读(7378) 评论(11) 推荐(7) 编辑
摘要:在多个视图中,如果有使用共用的样式代码,可以把它们移至CSS文件中去。今天Insus.NET就举例一个例子来说明。比如前2篇中《ASP.NET MVC图片管理(上传,预览与显示)》http://www.cnblogs.com/insus/p/4620420.html和《ASP.NET MVC图片管理... 阅读全文
posted @ 2015-07-09 11:26 Insus.NET 阅读(1900) 评论(0) 推荐(2) 编辑
摘要:一代好的程序,是几经修改与重构出来的。有关此篇Insus.NET对前面所在修改与重构,还是没有觉得很完美简洁。特别对是存在的json文件进行修改或是删除时,我们原先是从文件读取数据,修改或是删除数据,然后再存储。但有关文件操作有关,还是很繁杂,如存储前判断是否存在,最后还得重命名为旧文件名。关于这些... 阅读全文
posted @ 2015-03-23 15:34 Insus.NET 阅读(617) 评论(0) 推荐(1) 编辑
摘要:经过一系列重构,你眼明的话,还是可以看到还有重构的地方,如: string newFileName = "~/Temp/" + Guid.NewGuid().ToString() + ".json"; //"~/Temp/Order1.json"; string newFilePhysicalPa... 阅读全文
posted @ 2015-03-23 14:30 Insus.NET 阅读(684) 评论(0) 推荐(1) 编辑
摘要:Insus.NET较习惯做法,是在程序完成之后,抽一些少时间对写好的代码重新审视。比如这些天写的Web Api的程序来说,发现有很多值得重构代码。开发ASP.NET MVC程序,与数据相关有关联的一般是在控制器与Entity实体之间。初步重构是把Api控制器OrdersController.cs的程... 阅读全文
posted @ 2015-03-20 16:24 Insus.NET 阅读(1627) 评论(0) 推荐(2) 编辑
摘要:想foreach一个枚举,发觉它特别复杂,因此先把枚举转换为IEnumerable接口之后,简单多了。下面是枚举(enum)转换为IEnumerable接口方法:使用:修改这篇《程序一旦发觉写得不理想,那就得重构它》http://www.cnblogs.com/insus/p/4180186.htm... 阅读全文
posted @ 2014-12-27 10:04 Insus.NET 阅读(798) 评论(0) 推荐(1) 编辑
摘要:早上有写一篇《设计模式--建造者(Builder)模式》http://www.cnblogs.com/insus/p/4179620.html。是在ASP.NET环境中,应用与演示设计模式(Builder)。现在Insus.NET从博文中最后的下载链接下载取源程序,它是有写得不够理想,现在重构它。问... 阅读全文
posted @ 2014-12-23 15:14 Insus.NET 阅读(1187) 评论(0) 推荐(2) 编辑
摘要:温故而知新,看了以前写的博文《Asp.net读取Excel文件 2》http://www.cnblogs.com/insus/archive/2011/05/05/2037808.html觉得第一段代码示例,可以使用设计模式的简单工厂来实现。也就是说,使用两个全新的类,替代两个Switch分支。Xl... 阅读全文
posted @ 2014-12-18 10:19 Insus.NET 阅读(952) 评论(0) 推荐(2) 编辑
摘要:写这些也许有人认为“为了模式而模式”。Insus.NET所想到的,每个大师成为大师之前,也许都得这样做。走路,从小就开始学,直至现在,谁还不是为了走路而走路?一直重复着......很多人没有分享自己的经验,分享自己的过程,分享这东西,它不会因为分享而变少了......感动的故事,是因为分享了历程而让... 阅读全文
posted @ 2014-12-09 15:36 Insus.NET 阅读(682) 评论(0) 推荐(1) 编辑
摘要:昨天Insus.NET有写了一篇《ASP.NET的简单与面向对象开发》http://www.cnblogs.com/insus/p/4146503.html。以当时的想法,只能如此的水准,有网友说应该是使用状态设计模式,但Insus.NET想到这个案例没有使用到状态的设计模式。反而想到开关有两个事件... 阅读全文
posted @ 2014-12-06 14:56 Insus.NET 阅读(914) 评论(0) 推荐(1) 编辑
摘要:ASP.NET开发,一开始是为了超赶时间完成任务,只能把功能实现即可。如下面一个功能,在网页中有一个铵钮,用户点一点切换网页的图片,再点一点又切换回来。我们要怎样做?在铵钮事件中去变更图片的路径即可。这个例子,Insus.NET找到两张图片,图片来自《ASP.NET的适配器设计模式(Adapter)... 阅读全文
posted @ 2014-12-05 15:13 Insus.NET 阅读(2458) 评论(3) 推荐(6) 编辑