从暑假里面开始接触学习.NET,由于实际需求,必须一开始就从三层架构开始。于是进入了痛苦的.NET三层架构学习。可能我们学校学生很少有在毕业前在学校用
三层架构做东西的,所以我准备给大家来个简单的三层架构实践部署入门。我就从我自己开发的  “波Blog” 作为实例
开发环境及其使用工具:
  • 动软.net代码生成器 2.17版本
  • VsualStudio 2008
  • SQL Server2000 数据库
  • ER studio 数据库建模工具

好我们开始:
  从最基本的,首先在ERstudio 里面把我的系统的数据库设计好,先设计好逻辑模型(Logical Model)

完成数据库逻辑模型后,我们用ERstudio 生成实体模型(Physic Model)

最后链接生SQL Server成我们的数据库 Bo_Blog,由于重点在后面,我就不一一演示 ER Studio 怎么使用了
打开 动软.NET代码生成器,在右上选择添加SQL Server 2000 服务器

选择数据库类型,我们这里是SQL 2000

填写数据库据连接信息

链接成功数据库后,我们会看见右边栏变成了和我们SQL Server 企业管理器一样的数据库表列表

我们选择我们项目用的 Bo_Blog 数据库,选择中间的选项的生成代码项目

然后选择  简单三层架构 , 填写好 极为据我方案名称,这里我写的是 MyBlog,选择保存路径,这里我保存在桌面

然后选择数据库  Bo_Blog  然后会在左边列出 数据库的所有表


我们把所有表添加到右边框里面来

在这里我们要设置一下,我们在解决方案中 各个项目里面的命名空间,这里我把所有的命名空间都设置为MyBlog ,其他选择默认,点击开始生成

这样会自动生成整个三层架构的解决方案

但是这样生成的整个解决方案是不能通过VS 2008 编译通过的,会报很多错误,我们得经行精简和修改
接下来按照我说的做
打开生成的解决方案,删除 里面的所有 以  .sln  .csproj 和 .csproj.user 结尾的文件,删除整个Web文件夹,只保留Lib 文件夹里面的LTP.Common.dll 文件,DBUtility文件夹里面的DbHelperSQL.cs文件,我们另外在原文件夹中新建解决方案,然后自己把Model  BLL DAL DBUtility Lib 类库 项目按照下面方法附加到我们新建的 解决方案中
添加方式见下面步骤

我们新建解决方案 Bo_Blog  在桌面上
注意在VS 创建项目的时候,选择.NET FrameWork 2.0 的这里我们,路径选择在桌面

创建新的解决方案后,我们在解决方案中新建BLL , DAL , DBUtility ,Lib,Model  五个类库项目,建立一个  ASP.NET  Web应用程序项目

然后我们分别把原来我们生成 和 整理后的BLL DAL Model  Lib DBUtility  下的文件对应的拷贝到 我们新建解决方案的相对应的文件夹下面

拷贝完成后,我们在现在的解决方案中,选中一个 项目  

,然后选中解决方案属性上面的显示所有文件按钮  
,这样就会在下面出现我们赋值过来的文件,用虚线表示的  
,然后我们按住Ctrl全部选中他们,鼠标右键选择  “包括到项目中”  
,就这样,我们就吧他们附加到这个类库项目中了  
就这样,我们把其他文件都附加到DAL,Lib,Model,DBUtility 项目中去。
接下来我们得将解决方案中的几个项目关联起来,分别添加好各自间的引用
我们选择引用项目,在BLL中,我们要引用DAL和Model两个项目

Ctrl+鼠标左键选中DAL和Model,点击确定。

然后我们还要在BLL中引用一个Lib项目中的DLL文件,同样的方式,添加引用->浏览->找到Lib项目,选择里面的LTP.Common.dll 文件,点击确定

同样的方法,我们将在DAL项目中引用 DBUtility ,Model两个项目
然后我们要补充的就是,在DBUtility 项目中添加引用System.configuration 这个系统类,方式是 添加引用->.NET->找到System.configuration,然确定

然后我们在WEB 项目中 打开配置文件 Web.config  文件  ,在 <configuration> 后面添加 复制内容到剪贴板 代码:<appSettings>
<add key="WebDAL" value="MyBlog.SQLServerDAL"/>
<add key="WebConnectionString" value="server=localhost;Initial Catalog=Bo_Blog;uid=sa;pwd=***"/>
</appSettings>
这样一段数据库链接配置
然后找到 DBUtility 项目下的 DbHelperSQL.cs 文件,用 复制内容到剪贴板 代码:ConfigurationManager.AppSettings["WebConnectionString"];
字符串代替 复制内容到剪贴板 代码ubConstant.ConnectionString
当然,你也可以不在Web.Config  文件里面写连接字符串,直接写在这里就是了。

转载于:https://www.cnblogs.com/xtrsblog/archive/2008/11/25/1340471.html

手把手教你怎么用动软.net代码生成器 搭建三层架构相关推荐

  1. 良匠-手把手教你写NFT抢购软(五)

    良匠-手把手教你写NFT抢购软(五) 前言 本篇文章接上上一篇,如何用易语言去请求刚刚分析的接口. 操作 打开上次做的模板,和精易编程助手,先导入精易模块,再复制代码进去. 点击精易编程助手上面的生成 ...

  2. 良匠-手把手教你写NFT抢购软(二)

    良匠-手把手教你写NFT抢购软(二) 本篇教大家安装使用常用的NFT抢购所需软件 1.软件介绍 易语言 Fildder 精易编程助手 精易模块 软件链接 https://wws.lanzouy.com ...

  3. 良匠-手把手教你写NFT抢购软(一)

    良匠-手把手教你写NFT抢购软(一) 抢购软件原理 查看和分析HTTP请求 常见HTTP请求 合集: 博客地址 抢购软件原理 我们在点击抢购按钮的时候,会向平台的服务器发送HTTP请求,这条HTTP请 ...

  4. vue代码生成器可视化界面_手把手教你基于SqlSugar4编写一个可视化代码生成器(生成实体,以SqlServer为例,文末附源码)...

    在开发过程中免不了创建实体类,字段少的表可以手动编写,但是字段多还用手动创建的话不免有些浪费时间,假如一张表有100多个字段,手写有些不现实. 这时我们会借助一些工具,如:动软代码生成器.各种ORM框 ...

  5. 手把手教大家在自己的Windows电脑上搭建一个视频电话系统(基于开源项目FreeSwitch+Linphone)

    目前可以做视频电话的流媒体开源项目有很多,那么今天我就手把手教大家(基于FreeSwitch+Linphone)搭建一个免费的开源的能在局域网中使用的视频电话系统,部署与配置都非常的简单,而且点对点的 ...

  6. 零基础手把手教你写NFT抢购软

    前言 由于之前写过几篇文章,但是个人不是很满意,所以这次我打算把所有的知识汇总成一篇文章.可能会有很多地方写的不是很好,欢迎大家评论指出,我后续修正. 个人vx:http://wc.ljlju.cn/ ...

  7. 良匠-手把手教你写NFT抢购软(四)

    前言 这篇教大家如何去获取抢购的请求,有些网站比较复杂.咱们先从简单的入手,明白了其中的原理.才能更好的举一反三.为了更好的说明怎么写抢购软,我特地搭建了个NFT藏品网站用作教学. 实操 首先打开网址 ...

  8. html如何设置轮动,手把手教你构建轮动策略

    A股市场具有明显的大小盘风格轮动现象,比如2015年以中证500为代表的中小盘全面跑赢沪深300指数(大盘),但在随后的几年中沪深300指数成为市场的主流,收益也大幅跑赢中证500. 而最近一年,市场 ...

  9. 怎么快速制作动图?手把手教你快速制作动图

    相信小伙伴们在平时的聊天中少不了会用到各种GIF表情包来斗图.当我们想要自己制作有创意的GIF动图的时候,应该怎么办呢?这时候,大家就可以使用**gif制作软件**来制作GIF动图,非常的简单方便,只 ...

最新文章

  1. Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻
  2. Hdu 3341 Lost#39;s revenge (ac+自己主动机dp+hash)
  3. python invalid type promotion_17个新手常见Python运行时错误
  4. JavaScript八张思维导图
  5. ECharts 图表导出
  6. nsga2多目标优化之核心知识点(快速非支配排序、拥挤距离、精英选择策略)详解(python实现)
  7. Android安卓获取网络状态
  8. JAVA实现把指定文件夹下的所有文件压缩成zip包
  9. 织梦编辑器加HTML视频显示很小,织梦去掉编辑器自动加div的方法即大小字情况...
  10. CS224n —— lecture2的重难点讲解
  11. [NOIp2013] 货车运输
  12. POJ1061 青蛙的约会(扩展欧几里得)题解
  13. java list remove 无效_JAVA List使用Remove时的一些问题
  14. ERP原理及应用教程-第三章
  15. Axure 获取焦点
  16. 1.3经济金融基础之金融市场
  17. android型号手机怎么截图,安卓手机怎么截图 手机截图超简单图文教程
  18. 面向物流行业的文档管理系统
  19. 比尔盖兹的十一项人生建议
  20. uni-app里的拓展组件uni ui与UI框架uView UI的Popup 弹出层的区别!

热门文章

  1. 全球及中国5-氯-2-羟基苯甲酸产业专项调研与投资潜力预测报告2022-2028年
  2. 全球及中国彩妆行业渠道模式调研与发展方向分析报告2022版
  3. 全球及中国胶合板行业产量规模与营运能力研究报告2022版
  4. redmine上传大文件报错Request Entity Too Large
  5. java安装库源文件_JOGL安装
  6. 微量元素与中医药 谋定·大健康医药-李喜贵:辩证研究病理变化
  7. 中国火锅对话农民丰收节交易会·万祥军:谋定餐调产业链
  8. [js高手之路]深入浅出webpack教程系列9-打包图片(file-loader)用法
  9. Sidebar Enhancements使用说明
  10. 通过Sqoop实现Mysql / Oracle 与HDFS / Hbase互导数据