一直想写个总结,不过实在太忙了,所以一直拖啊拖啊,拖到现在,不过也好,有了这段时间的沉淀,发现自己又有了小小的进步。哈哈......

  原想框架开发的相关开发步骤、文档、代码、功能、部署等都简单的讲过了,就此了结本系列文章,经过这段日子的深入学习,发现本系列文章讲的还是太肤浅了,很多东西都没有讲到,也没有说明白。所以过段时间空闲些了,会继续从理论上来讲解怎么去设计一个框架(也算是给自己定个目标,加加压力),有了前面的代码了解,再学习理论相信大家也更容易接受了。

  小结

  学习如逆水行舟,不进则退,当能力达到一定程度后,能够应付各种工作需求时,就会处于一个安逸的状态,不思进取了,因为不停的学习会打乱这种状态,让自己过得不那么舒服。想要进步,想要更高的收入,只能使用各种外部压力逼着自己前行。

  会编写本系列文章,最初的想法是想刷刷博客园排名,想在园子的博客排行中能进到前三千名,可以和身边的朋友显耀一下(哈哈...大家没有想到吧);第二个目的就是想对自己这十来年的工作做一个总结并记录下来,以免以后忘记了某些知识点;三来是为了给自己增加压力,有压力才有动力,所以定好目标后先大声的说出来,告诉全世界的人,然后为了证明自己不是吹牛皮,只能全力以赴将这个目标实现。

  从第1篇到第25章《网站部署》,前后花了三个多月时间,一直挣扎在查资料、写代码和写文章之中,由于文笔一直都不太好,很多时候想表达一些东西时都不知用什么文字合适,有时要用到一些专有名词时怕引用错误,也得查询大量的文章,更多的时候是自己知识积累不足,定了一个标题后不知从何写起......就这样一点一滴的累积,不知不觉的完成了前面的章节。在编写的过程中有很朋友给了非常宝贵的建议,在此表示忠心的感谢,谢谢大家能给予大力的支持。

  对于本系列中介绍的快速开发框架,有不少朋友已经应用到实际的项目中了,对此我个人也特别有成就感,呵呵......当然它到底好不好,用过了才知道......嘿嘿......

  本系列针对的是中小型项目开发,从前期的准备、文档编写、功能模块设计、模型、应用的技术,到具体项目实施、数据库设计与创建、编码、功能实现,并讲解了一些核心模块的功能与使用,最后对测试与网站部署也简单的说了说。看过的朋友应该会知道,25篇章节中,大部分内容都是一带而过,讲得并没有太过深入,一方面是水平有限,自己的知识积累和沉淀不够。另一方面公司项目也比较紧,空闲时间太少,一直在忙。

  对于SubSonic3.0版ORM,在开发中确实存在着一些缺陷,不过因为有源码在,大多数还是可以直接解决的,之前发现不支持Oracle数据库,前段时间有朋友找出了官方写的Oracle底层T4模板,相信熟悉的朋友应该可以在这个基础上搞定这个问题的。SubSonic这个ORM框架已给很多人抛弃,这方面的技术文章也确实少了些,希望喜欢它的朋友大家一起来维护好它,毕竟个人时间与能力有限,有一些功能修复起来也确实很花时间。

  当然它带给大家的方便也是非常明显的,编码量的减少与开发速度的提升就不再重复提了,只要设计好逻辑层模板,配合Redis缓存,设计好数据库结构,对于高并发的大中型网站也是完全够用的。之前开发的一个电商类型的网站,用普通电脑做压力测试,1K并发完全没有问题;而合理使用临时表、历史表与汇总表,庞大的记录量也是小case。另外对于CS类型软件的开发,实际应用中调用也非常方便。

  代码Bug修改

  由于本系列中的项目是一边编码一边写博的,其中一些功能同我实际工作中使用的有较大的不同,基本上是编码实现到哪里然后章节就发表到哪里,没有经过生产环境中测试使用,所以前面章节发布出来的东西存在不少BUG,让不少朋友头痛了,呵呵。

  这段时间通过自己在实际项目中(一个外包电商网项目)的应用和一些朋友的反馈,重新对数据层、逻辑层模板和模块进行了优化与修改,解决了登陆异常问题和逻辑层调用的一些空异常问题,同时将UI层的FineUI升级到4.1.4最新版,大家下载后请比较一下代码更新到自己的项目中(原想在github.com中对源码进行共享管理的,可弄了半天也不知道要怎么搞,E文太差真是头痛啊)。

  另外还要同大家重点讲一讲的是,如果你不想升级到FineUI4.1.4,可以不用更新Dll文件夹中的FineUI.dll,UI层的文件也不用进行更改,而想要升级的朋友,下面内容需要同步更改。

  这次FineUI升级主要影响的是列表页,对编辑页面不受影响。

  列表页面的cs文件中,列表控件属性绑定函数Grid1_PreRowDataBound,原调用方式给取消了,需要进行下面处理

  修改为:

  aspx页面也有两个地方需要注意,一是列表中如果列过多,浏览器显示不全想出现横向滚动条时,需要标签<f:Grid>中添加表格的高度标签(如:Height="400px"),另外<f:window>取消了plain="false"这个属性,需要手动删除。

  好了,也不在说太多废话了,下面上最新代码

 从零开始编写自己的CSharp框架解决方案20141113.rar

 版权声明:

  本文由AllEmpty原创并发布于博客园,欢迎转载,未经本人同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。如有问题,可以通过1654937@qq.com 联系我,非常感谢。

  发表本编内容,只要主为了和大家共同学习共同进步,有兴趣的朋友可以加加Q群:327360708 ,大家一起探讨。

  更多内容,敬请观注博客:http://www.cnblogs.com/EmptyFS/

从零开始编写自己的C#框架(26)——小结的更多相关文章

  1. 从零开始编写自己的C#框架(1)——前言

    记得十五年前自学编程时,拿着C语言厚厚的书,想要上机都不知道要用什么编译器来执行书中的例子.十二年前在大学自学ASP时,由于身边没有一位同学和朋友学习这种语言,也只能整天混在图收馆里拼命的啃书.而再后 ...

  2. 从零开始编写自己的C#框架 ---- 系列文章

    目录: 从零开始编写自己的C#框架(1)——前言从零开始编写自己的C#框架(2)——开发前的准备工作从零开始编写自己的C#框架(3)——开发规范从零开始编写自己的C#框架(4)——文档编写说明从零开始 ...

  3. 从零开始编写自己的C#框架(17)——Web层后端首页

    后端首页是管理员登陆后进入的第一个页面,主要是显示当前登陆用户信息.在线人数.菜单树列表.相关功能按键和系统介绍.让管理员能更方便的找到息想要的内容. 根据不同系统的需要,首页会显示不同的内容,比如显 ...

  4. 从零开始编写自己的C#框架(25)——网站部署 【转】

    服务器安全部署文档 目录1.     前言.. 3 2.     部署环境.. 3 2.1         服务器环境信息.. 3 3.     磁盘阵列配置.. 4 4.     安装操作系统.. ...

  5. 从零开始编写自己的C#框架(25)——网站部署

    导航 1.关掉访问保护 2.发布网站 3.复制网站到服务器 4.添加新网站 5.设置网站访问权限 6.设置文件夹访问权限 7.控制可更新文件夹执行权限 8.设置“应用程序池”.net版本与模式 9.附 ...

  6. 从零开始编写自己的C#框架(20)——框架异常处理及日志记录

    最近很忙,杂事也多,所以开发本框架也是断断续续的,终于在前两天将前面设定的功能都基本完成了,剩下一些小功能遗漏的以后发现再补上.接下来的章节主要都是讲解在本框架的基础上进行开发的小巧. 本框架主要有四 ...

  7. 从零开始编写自己的C#框架(15)——Web层后端登陆功能

    对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证.用户在线记录.相关日志记录.单用户或多用户使用帐号控制等,都是在这个页面进行处理的. 1.在解决方案中创建一个Web项目,并将它设置 ...

  8. 从零开始编写自己的C#框架(11)——创建解决方案

    这段时间一直在充电,拜读了园子中大神们的博文(wayfarer的<设计之道>.TerryLee的<.NET设计模式系列文章>.卡奴达摩的<设计模式>还有其他一些零散 ...

  9. 从零开始编写自己的C#框架(2)——开发前准备工作

    没想到写了个前言就受到很多朋友的支持,大家的推荐就是我最大的动力(推荐得我热血沸腾,大家就用推荐来猛砸我吧O^-^O),谢谢大家支持. 其实框架开发大家都知道,不过要想写得通俗点,我个人觉得还是挺吃力 ...

随机推荐

  1. C++ std::set

    std::set template < class T, // set::key_type/value_type class Compare = less<T>, // set::k ...

  2. PHP以接口方式实现多重继承(完全模拟)--学习笔记

     1.UML类图: 2.PHP代码: <?php /** * Created by PhpStorm. * User: andy * Date: 16-11-23 * Time: 下午7:57 ...

  3. Ubuntu 16.10 安装byzanz截取动态效果图工具

    1.了解byzanz截取动态效果图工具 byzanz能制作文件小,清晰的GIF动态效果图,不足就是,目前只能通过输入命令方式来录制. byzanz主要的参数选项有: -d, --duration=SE ...

  4. 神马玩意,EntityFramework Core 1.1又更新了?走,赶紧去围观

    前言 哦,不搞SQL了么,当然会继续,周末会继续更新,估计写完还得几十篇,但是我会坚持把SQL更新完毕,绝不会烂尾,后续很长一段时间没更新的话,不要想我,那说明我是学习新的技能去了,那就是学习英语,本 ...

  5. 【开源】.Net Aop(静态织入)框架 BSF.Aop

    BSF.Aop .Net 免费开源,静态Aop织入(直接修改IL中间语言)框架,类似PostSharp(收费): 实现前后Aop切面和INotifyPropertyChanged注入方式. 开源地址: ...

  6. Jquery(1)

    鼠标点击事件: <input type="button" value="测试" onclick="test()" /> < ...

  7. HTML5实现文件断点续传

    HTML5的FILE api,有一个slice方法,可以将BLOB对象进行分割.前端通过FileList对象获取到相应的文件,按照指定的分割方式将大文件分段,然后一段一段地传给后端,后端再按顺序一段段 ...

  8. WebLogic的安装和配置以及MyEclipse中配置WebLogic

    WebLogic 中间件: 是基础软件的一大类,属于可复用软件的范畴,顾名思义,中间件属于操作系统软件与应用软件的中间,比如:JDK,框架,weblogic. weblogic与tomcat区别 : ...

  9. Activity之概览屏幕(Overview Screen)

    概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...

  10. Lucene4.4.0 开发之排序

    排序是对于全文检索来言是一个必不可少的功能,在实际运用中,排序功能能在某些时候给我们带来很大的方便,比如在淘宝,京东等一些电商网站我们可能通过排序来快速找到价格最便宜的商品,或者通过排序来找到评论数最 ...