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

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

  这段时间一直在充电,拜读了园子中大神们的博文(wayfarer的《设计之道》、TerryLee的《.NET设计模式系列文章》、卡奴达摩的《设计模式》还有其他一些零散的文章),获益良多,虽然对大部分设计模式还是有点蒙,不过还是大长见识了。另外还购买了园子里范钢大神的大作《大话重构》和其他大神推荐的《重构:改善既有代码的设计》,每天早上早起一小时看书,感觉这个时间头脑清晰,看书的效率特别高,向大家推荐一下,这些书籍都属于需要精读的书籍,有时间的话要反复观看与练习。

  按开发计划,5号开始进入代码编写阶段,开始编写框架代码,在编写的同时一直在考虑怎么才能比较通俗的讲清楚整个代码编写过程与相关细节呢?对于代码讲解的编写不是三两句话就说得清楚的,用视频的确可以说得明白不过自己又没有经验不知怎么弄,所以认真考虑后觉得,如果一次性将实现好的代码发出来,内容太多不方便大家对一些细节的了解,还是按平时编写代码的开发方法,将代码实现的一个个步骤按顺序写出来,功能不一次性实现,要用到相关功能时再对类或代码进行重构来添加功能,大家从中也可以了解开发过程与思路。

  本架构最终实现后,代码的偶合性会比较高,不过对于中小型项目来说问题不是很大,因为多数代码都是直接使用T4模板生成,有变化只要在模板函数里修改就可以了。

  模板函数是为了减少开发工作量为目的来实现的,对于独立的功能需要自行开发自定义函数来实现,这些会在后面章节中详细说明。

  由于以前开发的项目代码版权属于公司所有,所以本项目会使用网上的一些开源源码,而相关的一些功能函数也会进行重写。

  另外,虽然已经制定了开发计划,不过编码与文章编写肯定不会同步,所以有时候文章会发表得晚一些,也请大家见谅。

 

  就不再继续罗嗦了,上图上代码

 

  1、首先创建一个空白的解决方案,并添加4个解决方案文件夹(主要是为了以后项目多了后可以清晰的进行分类存放,如果项目中含有服务、Winform、测试等项,可以另外建立更多的文件夹)

  

 

  2、进入sufeinet网,下载大神苏飞共享的C#基类库大全,非常感谢苏飞和众多网友共享出这么多优秀的工具类出来。

  

  

  3、将C#基类类库、SubSonic3.0插件项目、DAL层代码和常用DLL文件放到刚创建好的解决方案文件夹中

  

 

  4、将C#基类类库和SubSonic3.0插件项目添加到Common文件夹中,Solution.DataAccess添加到DataAccess文件夹中

  

 

  5、将DotNet.Utilities项目属性改为.NET Framework 4

  

 

  6、DotNet.Utilities添加Newtonsoft.Json.dll引用,SubSonic.Core添加Castle.Core.dll引用,Solution.DataAccess添加DotNet.Utilities和SubSonic.Core项目引用

  

  

  

 

   7、创建数据库

  按《从零开始编写自己的C#框架(9)——数据库设计与创建》章的介绍,并用章节中附件的工具《ExcelToSQLString2.91_sql》与《数据字典》生成数据库

  创建数据库SolutionDataBase

  

  

  下载附件数据库设计与创建章节附件.rar并解压

  

  打开《数据字典》,复制数据表名称

  

  打开ExcelToSQLString2.91_sql.exe软件,设计文件路径,将上面复制的数据表名称粘贴到表格名称外,按图表进行打勾选择后,点击运行生成SQL语句

  

  

  打开数据库,选择SolutionDataBase数据库后,点击新建查询,将上面生成的SQL语句复制到查询分析器中,然后点击执行

  

  重复上面动作,将《数据字典》中的所有表创建出来

  

   添加数据库管理帐号

  

  创建登陆名SolutionUid,密码123456

  

  勾选权限

  

 

   8、修改数据库链接

  打开解决方案

  

  修改数据库链接字串为前面创建的数据库登陆名与密码

  

  修改T4模板数据库名称

  

 

  9、运营T4模板,生成DAL层文件

  

  

  在运行生成时,如果出现下面错误提示,请检查App.config数据库链接字串中的登陆名与密码是否正确,如果正确请点击保存App.config配置文件,因为T4文件有时候会因为获取不到配置文件而产生错误,一般保存后就可以正确运行

  另外也检查一下数据库名称命名,使用不规范的命名或用关键字命名数据库名称或表名称,都有可能产生问题

  

  

 

  框架各层文件功能说明,请查看附件中《数据字典》的目录与文件说明

  

 

  下一章节会在周三或周四发布,主要讲解逻辑层T4模板的应用(T4模板的使用是本框架的主要核心)

 

 

 

 下载地址:

创建解决方案附件.rar

 

 

 版权声明:

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

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

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

 

 

时间: 2024-08-03 12:05:21

从零开始编写自己的C#框架(11)——创建解决方案的相关文章

从零开始编写自己的C#框架(9)——数据库设计与创建

原文:从零开始编写自己的C#框架(9)--数据库设计与创建 对于千万级与百万级数据库设计是有所区别的,由于本项目是基于中小型软件开发框架来设计,记录量相对会比较少,所以数据库设计时考虑的角度是:与开发相结合:空间换性能:空间换开发效率:减少null异常......当然不同的公司与项目要求不同,初学者要学会适应不同的项目开发要求,使用本框架开发时,必须严格按照本章节的要求来设计数据库,不然可能会产生不可控的异常.   从零开始编写自己的C#框架 数据库设计规范   文件状态: [√] 草稿 [ 

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

原文:从零开始编写自己的C#框架(17)--Web层后端首页 后端首页是管理员登陆后进入的第一个页面,主要是显示当前登陆用户信息.在线人数.菜单树列表.相关功能按键和系统介绍.让管理员能更方便的找到息想要的内容. 根据不同系统的需要,首页会显示不同的内容,比如显示公司公告.公司新闻.内部短消息.个人事务.各种业务提醒......等各种内容,这些大家可以需要去进行呈现. 先上代码 Main.aspx 1 <%@ Page Language="C#" AutoEventWireup=

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

原文:从零开始编写自己的C#框架(1)--前言 记得十五年前自学编程时,拿着C语言厚厚的书,想要上机都不知道要用什么编译器来执行书中的例子.十二年前在大学自学ASP时,由于身边没有一位同学和朋友学习这种语言,也只能整天混在图收馆里拼命的啃书.而再后来也差不多,自学了很多不同的知识,都一直只能自己默默的克服一个又一个困难.所以这几年带一些应届生或只有一两年经验的新人时,都会同他们讲:你们现在太幸福了,有问题可以找度娘,还可以找我来解决.做为过来人,能深深的体会到刚入门的时候,没有系统的介绍和老师指

从零开始编写自己的C#框架(8)——后台管理系统功能设计

原文:从零开始编写自己的C#框架(8)--后台管理系统功能设计 还是老规矩先吐下槽,在规范的开发过程中,这个时候应该是编写总体设计(概要设计)的时候,不过对于中小型项目来说,过于规范的遵守软件工程,编写太多文档也会拉长进度,一般会将它与详细设计合并到一起来处理,所以本文档看起来会怪怪的,不是很符合规范,它只是从实用角度出发来编写,以指导后面功能的设计与开发.     从零开始编写自己的C#框架 后台管理系统功能设计文档     文件状态: [√] 草稿 [  ] 正式发布 [  ] 正在修改 文

从零开始编写自己的C#框架(13)——T4模板在逻辑层中的应用(二)

原文:从零开始编写自己的C#框架(13)--T4模板在逻辑层中的应用(二) 最近这段时间特忙,公事私事,忙得有时都没时间打开电脑了,这两周只能尽量更新,以后再将章节补回来.   直接进入主题,通过上一章节,大家明白了怎么使用模板类编写T4模板,本章进的是一些简单技巧的应用 1.首先创建一个Test2.tt模板 2.然后修改模板内容为下面代码 这些代码与上一章最后面的那个差不多,只是修改了输出文件名.命名空间.类名.类属性(partial)和一个单例获取函数 1 <#@ template debu

从零开始编写自己的C#框架(6)——SubSonic3.0插件介绍(附源码)

原文:从零开始编写自己的C#框架(6)--SubSonic3.0插件介绍(附源码) 前面几章主要是概念性的东西为主,向初学者们介绍项目开始前的一些知识与内容,从本章开始将会进入实操阶段,希望跟着本系统学习的朋友认真按说明做好每一步操作(对于代码最好是直接照着文档内容在你的IDE中打一次出来,而不是使用复制粘贴),这样对你理解后面的章节会有较好的帮助,如果你对我这种书写方式有什么建议或支持,也希望在评论中留言,谢谢你的支持.   SubSonic3.0简介 SubSonic是Rob Conery用

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

原文:从零开始编写自己的C#框架(15)--Web层后端登陆功能 对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证.用户在线记录.相关日志记录.单用户或多用户使用帐号控制等,都是在这个页面进行处理的.   1.在解决方案中创建一个Web项目,并将它设置为启动项   2.添加引用   3.添加WebManage文件夹与Login.aspx文件 4.添加登陆页面HTML代码 1 <%@ Page Language="C#" AutoEventWireup="

从零开始编写自己的C#框架(16)——Web层后端父类

原文:从零开始编写自己的C#框架(16)--Web层后端父类 本章节讲述的各个类是后端系统的核心之一,涉及到系统安全验证.操作日志记录.页面与按键权限控制.后端页面功能封装等内容,希望学习本系列的朋友认真查看新增的类与函数,这对以后使用本框架进行开发时非常重要.   1.父类(基类)的实现 在开发后端首页与相关功能页面前,我们首先要实现的是所有页面的基类(父类),将常用的功能都预先实现出来,而后面的相关UI类则直接继承它,这样就能简单的自动实现了相关页面功能,不用再每个页面去编写某些按键功能或其

从零开始编写自己的C#框架(14)——T4模板在逻辑层中的应用(三)

原文:从零开始编写自己的C#框架(14)--T4模板在逻辑层中的应用(三) 原本关于T4模板原想分5个章节详细解说的,不过因为最近比较忙,也不想将整个系列时间拉得太长,所以就将它们整合在一块了,可能会有很多细节没有讲到,希望大家自己对着代码与模板去研究. 本章代码量会比较大,基本将Web层要使用到的大部分函数都用模板生成了出来,而模板中的函数,很多也是互相关联调用的.另外在DotNet.Utilities(公共函数项目)中也添加与修改了一些类和函数. 需要特别说明的是,在逻辑层添加了July大神