VB.Net三层实现小例

三层架构实例

本人由于刚接触不久,所以有许多借鉴的地方,希望大家多多指教。

下面的例子仅仅为了说明分层的概念,所以都是奔着尽可能简单的原则,没有实际意义

首先在SQL SERVER中建一个数据库,命名为“SanCengTester”;再建一个表,命名为“User_Info”;然后添加一个字段“Name”。

下面就以在表“User_Info”中插入一个用户为例来讲述三层的实现

一、打开VS,新建空解决方案,具体如下:

1、文件→新建→项目

2、展开其它项目类型→Visual Studio解决方案→空白解决方案

3、起一个名字,并确定(如下图)

二、添加项目

右击资源管理器中刚建的解决方案(Tester)->添加->新建项目


按下图方式,依次添加Model、DAL、BLL三个类库



添加一个Windows窗体应用程序(命名为WinFormUI)



创建WinForm后按下图设计窗体



至此,添加项目工作已完成(将各个项目下的类重命名一下)



三、三层代码实现

实体(Model)层(为三层之间进行数据传递)

在Model里面添加user.cs文件及如下代码:

'实体(Model)层,实际就是实体类。为三层之际传递数据
Public Class ClassModel
    '定义UserName属性(字段)
    Private UserName As String
    Public Property name As String
        Get
            Return UserName
        End Get
        Set(ByVal value As String)
            UserName = value
        End Set
    End Property
End Class

数据访问层(DAL)(对数据库的查询(select)和非查询(insert、delete、update)操作进行封装)


'先在DAL中加入对Model的参考,再加入如下代码

Imports Model
Imports System.Data.SqlClient
Public Class ClassDAL
    Dim sConn As String
    Dim dbConn As SqlConnection
    '获取数据库连接对象
    Public Function getConn() As SqlConnection
        sConn = "server=.;database=SanCengTester;integrated security=sspi"
        dbConn = New SqlConnection(sConn)
        Return dbConn
    End Function
    '执行插入的sql命令
    Public Function getCom(ByVal model As ClassModel) As Boolean
        Dim sqlstring As String = "insert into User_Info(Name)values('" + model.name + "')"
        Dim sqlconn As SqlConnection = Me.getConn()
        sqlconn.Open()
        Dim sqlcom As SqlCommand = New SqlCommand(sqlstring, sqlconn)
        Try
            sqlcom.ExecuteNonQuery()
            Return True
        Catch ex As Exception
            MsgBox(ex.Message)
            Return False
        Finally
            sqlcom.Dispose()
            sqlconn.Close()
            sqlconn.Dispose()
        End Try
    End Function
End Class


业务逻辑层(BLL)(执行具体业务逻辑,连接UI层和DAL层)


'先在BLL中加入对Model和DAL层的引用再加入如下代码
Imports Model
Imports DAL
Public Class ClassBLL
    Dim dal As New ClassDAL
    Public Function getCom(ByVal model As ClassModel) As Boolean
        Try
            model = New ClassModel
            Return dal.getCom(model)
            Return True
        Catch ex As Exception
            MsgBox(ex.Message)
            Return False
        End Try
    End Function
End Class


用户界面层(UI)(接收和显示数据)

'先在WinFormUI中加入对Model、Bll、DAL层的引用再加入如下代码
Imports Model
Imports DAL
Imports BLL
Public Class FormUI
    Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click
        Dim txtmodel As New ClassModel
        txtmodel.name = txtUserName.Text.Trim()
        Dim bll As New ClassBLL
        If (bll.getCom(txtmodel)) Then
            MsgBox("恭喜,插入用户成功!")
        Else
            MsgBox("抱歉,插入用户失败!")
        End If
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        End
    End Sub
End Class


至此小例完成。。。















                
目录 译者序 序言 前言 第1章 安装ap-api 1 1.1 安装 1 1.2 配置autocad 1 第2章 操纵autocad 4 2.1 基本原则 4 2.2 关闭命令回显 5 2.3 保存和恢复系统变量 6 2.4 合人意的u命令 7 2.5 处理escape键 8 2.6 防止命令透明执行 9 2.7 处理回车键 11 2.8 示范程序框架 12 2.9 控制用户命令 13 2.10 没有选择,就没有操作 18 2.11 先选择对象,后调用命令 20 2.12 用好上一个选择集 21 2.13 管理世界坐标系 22 2.14 获取我们需要的对象 25 2.15 输入的确认与限制 26 2.16 autocad命令中的缺省值 35 2.17 关键字、提示和上下文菜单 37 第3章 管理对话框 40 3.1 保持位置 40 3.2 你应该做到 42 3.3 不是为了嵌套而嵌套 44 3.4 隐藏对话框 46 3.5 在对话框中显示幻灯片 47 3.6 获得字符串 49 3.7 获得整型数 52 3.8 获得实数 55 3.9 复选框和单选按钮 57 3.10 列表框和弹出式列表 60 第4章 用activex automation处理autocad 图形 64 4.1 只有当你的工具是一把榔头的时 候,任何事情才会像一颗钉子 64 4.2 autocad的dxf文件格式 64 4.3 文件头段 64 4.4 表段 64 4.5 块段 65 4.6 图形实体段 65 4.7 非图形对象段 65 4.8 autolisp[-]autocad 数据格式 65 4.9 autocad对象模型 66 4.10 为什么要使用activex automation 66 4.11 在何处画线 67 4.12 在何处画了线 70 4.13 符号表 70 4.14 创建图块 70 4.15 在ucs中画图 71 第5章 充分利用activex automation 73 5.1 消息框 73 5.2 命令的输入 74 5.3 菜单和工具栏 74 5.3.1 删除菜单项 74 5.3.2 插入菜单项 82 第6章 反应器入门 84 第7章 生成和配置应用程序 88 7.1 创建工程 89 7.2 创建应用程序 91 7.3 加载应用程序 94 7.4 安装应用程序 96 7.5 配置应用程序 98 附录 ap-api参考 99 a.1 ap-api实用函数 100 a.2 ap-api activex实用函数 136 a.3 ap-api activex反应器函数 142 a.4 ap-api activex方法函数 144 a.5 ap-api activex属性函数 208
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值