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

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

  小结

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

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

  从第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. opencv中Mat与IplImage,CVMat类型之间转换

    opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型 ...

  2. 谈谈一些有趣的CSS题目(十二)-- 你该知道的字体 font-family

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  3. 记一次SQLServer的分页优化兼谈谈使用Row_Number()分页存在的问题

    最近有项目反应,在服务器CPU使用较高的时候,我们的事件查询页面非常的慢,查询几条记录竟然要4分钟甚至更长,而且在翻第二页的时候也是要这么多的时间,这肯定是不能接受的,也是让现场用SQLServerP ...

  4. iOS---iOS10适配iOS当前所有系统的远程推送

    一.iOS推送通知简介 众所周知苹果的推送通知从iOS3开始出现, 每一年都会更新一些新的用法. 譬如iOS7出现的Silent remote notifications(远程静默推送), iOS8出 ...

  5. webpack入门教程之Hello webpack(一)

    webpack入门教程系列为官网Tutorials的个人译文,旨在给予想要学习webpack的小伙伴一个另外的途径.如有不当之处,请大家指出. 看完入门教程系列后,你将会学习到如下内容: 1.如何安装 ...

  6. React的使用与JSX的转换

    前置技能:Chrome浏览器   一.拿糖:React的使用 React v0.14 RC 发布,主要更新项目: 两个包: React 和 React DOM DOM node refs 无状态的功能 ...

  7. How those spring enable annotations work--转

    原文地址:http://blog.fawnanddoug.com/2012/08/how-those-spring-enable-annotations-work.html Spring's Java ...

  8. CSharpGL(33)使用uniform块来优化对uniform变量的读写

    CSharpGL(33)使用uniform块来优化对uniform变量的读写 +BIT祝威+悄悄在此留下版了个权的信息说: Uniform块 如果shader程序变得比较复杂,那么其中用到的unifo ...

  9. Entity Framework的启动速度优化

    最近开发的服务放到IIS上寄宿之后,遇到一些现象,比如刚部署之后,第一次启动很慢:程序放置一会儿,再次请求也会比较慢.比如第一个问题,可以解释为初次请求某一个服务的时候,需要把程序集加载到内存中可能比 ...

  10. SAP CRM 用户界面对象类型和设计对象

    在CRM中的用户界面对象类型的帮助下,我们可以做这些工作: 进行不同的视图配置 创建动态导航 从设计层控制字段标签.值帮助 控制BOL对象的属性的可视性 从导航栏访问自定义组件 一个用户界面对象类型之 ...