`
chenxueyong
  • 浏览: 336208 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

使用动软.net代码自动生成工具的步骤

阅读更多

使用动软.net代码生成工具(V2.4.1)在建立好数据库之后快速的生程自己的工程代码.

首先建立自己的数据库,用动软连接连接数据库.根据需要选择数据库并自动生成代码.

动软自动生成的代码还不能立刻使用需要修改一些地方:

1、 修改webconfig中的<add key="DAL" value="Maticsoft.SQLServerDAL"/>节为自己的命名空间。

2、 修改webconfig<add key="ConnectionString"value="server=127.0.0.1;database=codematic;uid=sa;pwd="/>database为自己数据库的名字,并添加pwd密码。

3、 Web这个程序集的“引用”中添加对SQLServerDAL的引用。(如果这里不引用将会导致DALFactory程序集中的DataAccess类的CreateObject方法不能使用反射产生实例从而引发“未将对象引用设置到对象的实例。”的错误

4、 web程序集设为启动项目。

5、 根据需要把Web程序集中把自动生成的Web页添加进自己的工程。

 

 

关于反射:

    objType=Assembly.Load(AssemblyPath).CreateInstance(classNamespace);其中:AssemblyPath指命名空间.程序集名称。classNamespace指命名空间.程序集名称.类名称

   

关于使用动软.net代码生成工具:

为了使工具更适合于自己的习惯,可以在使用前对它进行简单的设置:安装好动软.net代码生成工具后在“选项设置”中修改“代码生成设置”的顶级命名空间,然后修改“默认生成项目架构类型”为“工厂模式三层”。“类命名规则”表名规则修改为“首字母大写ModelBLLDAL类命名规则分别加上:“Mdl”、“Mgr”、“DAO”。

 

 

 

关于使用加密方法提高安全性:

这个工具中提供了加密/解密功能,主要是对连接的字符串进行加密和解密.加密/解密的方法在DBUtility程序集的DESEncrypt类中定义,预定义的加密密钥是 litianping 对其进行修改可设置自己的密钥.

获得加密字符串并进行加密的方法:

1、在配置文件中设置正确的连接字符串:<add key="ConnectionString" value="server=127.0.0.1;database=codematic;uid=sa;pwd= "/>

2、在Web程序集中建立一个页面并添加对DBUtility程序集的引用(右键添加引用).并在页面代码中添加: usingMaticsoft.DBUtility;

3、添加如下代码:

        protected void Page_Load(object sender, EventArgs e)

        {

            string _connectionString = ConfigurationManager.AppSettings["ConnectionString"];

            string ConStringEncrypt = ConfigurationManager.AppSettings["ConStringEncrypt"];

            Response.Write("原文:" + _connectionString + "<br/>");

 

            string s1 = Maticsoft.DBUtility.DESEncrypt.Decrypt(_connectionString);

            Response.Write("对原文解密值:" + s1 + "<br/>");

 

            string s2 = Maticsoft.DBUtility.DESEncrypt.Encrypt(_connectionString);

            Response.Write("对原文加密值:" + s2 + "<br/>");

 

        }

4、在浏览器中查看此页面即可获得加密的字符串。

5、复制所需要的加密字符串将value中的值改为复制的加密字符串,如:将<add key="ConnectionString"value=" server=127.0.0.1;database=codematic;uid=sa;pwd= "/>改为:<add key="ConnectionString" value="8618B53C32BF8E0B6CD3BDFF59B9F24BE1C6D586A5915C8B6DC69A09ABB2DF60A4026BDE8E76B6FDE2BFCEA3FA8E06CB "/>

6、在webcongig中设置<add key="ConStringEncrypt" value="false"/>, false 改为 true.(此为关键步骤)

 

关于使用“工厂模式结构”自动生成代码的架构

这里所说的三层都是针对动软.net代码生成工具自动生成的代码的讲解,并不代表规范。

其实就是在简单三层的基础上对DAL层增加了一个接口层。简单的三层分别为:ModelBLLDAL

Model层是一些数据实体,主要是每个数据表生成一个类,表中的字段对应类中的属性。

DAL层处理数据库的增删改查。

BLL层把页面层和DAL层关联起来,处理业务逻辑,这一层是我们应该根据实际情况进行修改的部分。

还有一些辅助的程序集:

DALFactory是生成具体类的程序集,使用的是工厂方法模式。DataAccess类是这个程序集的主要类。DataCache类是DataAccess类的辅助类,可以使用Cache提高性能。

 

DBUtility程序集提供了访问数据库的基础方法,CommandInfo类是此程序集中其余类的辅助类。SQLHelperOracleHelper是微软官方的的书写方式。PubConstant也是为其他类提供服务的辅助类,主要用于获取数据库连接字符串。DESEncrypt是加密解密类,也是一个辅助类,此类默认加解密密钥是litianping。其余类DbHelperMySQLDbHelperOleDbDbHelperOraDbHelperSQLDbHelperSQLP有很大的相似性,分别提供了对不同数据库进行访问的方法。

 

IDAL提供了DAL层接口,引入接口就可以避免对具体类的依赖。针对接口编程。

 

SQLServerDAL程序集实现了IDAL接口,是具体访问数据库进行增删改查的类。

OracleDAL程序集实现了IDAL接口,也是具体访问数据库进行增删改查的类。

 

BLL程序集是逻辑业务层,这对IDAL层编程不依赖于具体数据库处理类,通过DALFactory中的反射生成实例的方法生成具体的数据库处理类。

 

如果有需要还可以对BLL层添加接口层IBLL,让Web层针对IBLL层编程,但个人认为应该根据需要分层并不是分层越多越好。

分享到:
评论

相关推荐

    .NET文档生成工具(.Net 2.0)——更新至2.1

    &lt;p&gt;&lt;a href="http://www.cnblogs.com/Files/lucc/ADB_SRC.rar"&gt;.net 文档生成工具2.1源代码下载&lt;/a&gt;&lt;/p&gt; 相关连接 &lt;p&gt;&lt;a href="http://www.cnblogs.com/lucc/archive/2008/09/05/1284762.html"&gt;编写文档生成器(ADB...

    ibatis代码自动生成工具项目

    自动生成ibatis所需文件,达到快速查询,减少工作量的效果 CorpChannelDAO.java CorpChannelDAOimpl.java CorpChannel.java CorpChannelExample.java game_channel__corp_channel_SqlMap.xml 详情步骤请见...

    微信小程序前端自动切片生成布局软件

    微信小程序自动切片生成布局软件是一款根据效果图像画画一样来设计微信小程序,自动生成导出前端页面...小程序前端布局自动生成工具 小程序制作工具 小程序制作工具官方网站 小程序定制开发工具 小程序定制快速开发工具

    asp.net知识库

    发布Oracle存储过程包c#代码生成工具(CodeRobot) New Folder XCodeFactory3.0完全攻略--序 XCodeFactory3.0完全攻略--基本思想 XCodeFactory3.0完全攻略--简单示例 XCodeFactory3.0完全攻略--IDBAccesser ...

    Pro .NET Best Practices .net最佳实践 英文版

    2.4.1 自动化测试生成工具 2.4.2 契约式编码 2.5 微软安全开发生命周期 2.6 小结 第3章 实现预期目标 3.1 成功要素 3.1.1 项目启动阶段 3.1.2 超出范围 3.1.3 干扰和分心 3.1.4 学习与工作之间的平衡 3.2 共识 ...

    ASP.NET3.5典型模块开发源代码

    13.2.1 QQ网站自动生成在线客服代码 151 13.2.2 将代码应用于项目中 152 13.3 多用户在线客服范例 153 13.3.1 设计用户QQ列表数据库 153 13.3.2 设计客服人员的增删功能 154 13.3.3 实现多用户在线客服...

    《.NET最佳实践》.((美)Stephen Ritchie)

    2.4.1 自动化测试生成工具 27 2.4.2 契约式编码 30 2.5 微软安全开发生命周期 30 2.6 小结 32 第3章 实现预期目标 33 3.1 成功要素 34 3.1.1 项目启动阶段 37 3.1.2 超出范围 38 3.1.3 干扰和分心 38 ...

    基于模板的代码生成器LKGenerator1.1.0_x64

    代码生成工具使用前置条件:系统安装JDK并配置JAVA_HOME环境变量。 功能: 一、数据库生成实体类. 1.配置 (1)本工具提供了3中连接数据库的方式,分别是:MySql、Oracle、SqlServer,在界面上给出连接示例,方便...

    Apk2Java V1.1 [Android软件全自动反编译工具] 最新版

    Android软件开发人员必备工具, 内嵌所有需要的...5.自动生成相关项目文件; 6.自动调用jd-gui.exe打开jar文件; 7.自动另存为jd-gui打开的所有源码到src目录; 8.自动格式化xml文件; 9.自动格式化java文件; 作者:朱狄敏

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。  ...

    HaivOra4J2ee工具提供图片

    开发工具HaivDb4J2ee,全称Haiv Database Tool for J2EE,是基于java编写的j2ee代码自动生成工具暨数据库管理工具,运行于jdk1.5环境中,目前版本支持Oracle、mysql、mssql三种常用的数据库,以后会视情况扩充至其它...

    ASP.NET4高级程序设计(第4版) 3/3

    此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。  ...

    Visual.Basic.2010.&.NET4.高级编程(第6版)-文字版.pdf

    Visual.Basic.2010.&.NET4.高级编程(第6版)-文字版.pdf 第I部分 语言结构和环境 第1章 visual studio 2010 3 1.1 visual studio 2010:从express到ultimate的各种版本 4 1.2 visual basic的关键字和语法 7 ...

    Entity Model Studio V2.0 Beta

    Entity Model Studio是一款支持面向对象设计方法的建模及代码生成工具,集面向对象的静态建模,物理数据库设计,ORM代码自动生成于一体。Entity Model Studio自带了完全自主研发的ORM内核,并与静态模型高度结合,...

    Go语言制作图片分辨率批量提取工具

    采用Go语言开发,包含Go语言源代码文件,和生成img.exe文件,可自己搭建Go语言开发环境,重新生成exe文件,也可以直接使用exe文件。exe能自动获取同级"pic"文件下的所有图片的分辨率,并保存到Excel表格中。具体使用...

    visual studio 2012实用插件

    outline  Visual Studio 默认的大纲方案只允许在方法级别及... 对于开发 asp.net 网站的童鞋来说,这个算得上是神器了,它可以进行颜色(、图片、字体)预览、自动生成 xxx.min.js、自动生成兼容各浏览器的CSS等,

    STM32CubeMX安装包

    STM32CubeMX 是 ST 意法半导体近几年来大力推荐的STM32 芯片图形化配置工具,也是配置和初始化 C 代码生成器(STM32 configuration and initialization C code generation),也就是自动生成开发初期关于芯片相关的...

    代码语法错误分析工具pclint8.0

    (一)Windows下C/C++开发工具中,VC6使用较为普遍,因此这里先讲下VC6.0环境中集成pclint的步骤. 首先, 当然要下载软件,正版软件要200多$呢,买不起!所以只好网上找免费的拉。从...

    JAVA上百实例源码以及开源项目源代码

    1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高...

Global site tag (gtag.js) - Google Analytics