• 实体


    一.为什么需要使用实体类?

    实体类(Entity)很好地弥补了Data Set的一些缺点:它是完全受开发者控制的对象

    具有面向对象的特征,是强类型的。其实和Data Set一样,实体类既是业务实体,同

    时也承载着一个数据载体的任务。实体类是业务对象的基础,它用面向对象的思想

    消除了关系数据与对象之间的差异。

    二.什么是实体类?

    所谓实体类,简单地说就是描述一个业务实体的“类”,业务实体直观一点理解就是

    整个软件系统业务所涉及的对象。例如,My School系统中的班级,学生,年纪等都是

    业务实体,“雷电”游戏中的飞机,子弹都可以看作是业务实体。在信息系统软件开发中,

    从数据的存储来讲,业务实体就是存储应用系统信息的数据表,将每一个数据表中的

    字段定义成属性,并将这些属性用一个类封装-----------这个类就是“实体类”。

    三.实体类属性类型与数据库类型

    实体类属性类型

    数据库类型

    String

    Char,nchar,varchar,nvarchar

    Int

    Int,smallint

    Decimal

    Decimal,money

    Date Time

    Datetime

    Bool

    Bit

    float

    float

    四.XML的典型应用:配置文件

    (1)App .config的使用

    在前面的学习中,连接数据库的连接字符串写在了一个类中,这时候就会有这样一个问题,如果更换数据库地址,需要更改这个类,然后重新编译才可以连接到数据库。作为一个企业

    项目,这种做法很不专业。解决的办法是将连接字符串放到一个文件中,然后程序读取整个文件,更换数据库地址时,只需要修改这个文件就可以了

    在winforms程序中可以添加一个App.confg文件,这是一个XML文件而且有专门的读取该文件的方法。

    语法如下:

    <?xml version=”1.0” encoding =”utf-8”?>

    <Configuration>

    <Connection String>

    <add name=”MySchoolConnectionString”

    Connection String=”Data Source= .;Initial Catalog=My School;

    Integrated Security= true”providerName=”System.Data.SqlClient”/>

    </connectionStrings>

    </configuration>

    那么在程序中如何读取这个文件呢?首先在需要读取连接字符串的项目中添加引用System.Configuration,并在需要读取连接字符串的类中引用命名空间using System.Configuration,读取该连接字符串的方法如下:

    Public static readonly string connString  = 

    ConfigurationManger.ConnectionStrings[“MySchoolConnectionString”].ToString();

    因为连接字符串在使用ADO.NET访问数据库的很多地方都会使用,这里将连接字符串定义为static型,为当前类的所有对象共有而不属于特定的对象。在调用的时候不需要实例化。

    例如 SqlConnection conn = new Sql Connection(SqlHelper. connString);

    知识点总结:

    1.实体类是分层架构中传递数据的重要工具,与data Set 相比,实体类是强类型的,面向对象的,易于控制,实体类使得数据访问层之外的层次的开发不必在了解数据库的架构,实现了这些层和数据库的解耦。

    2.数据访问层将实体类的实例解析,或者将从数据库中检索到的关系数据转换成实体对象

    3.表示层解析实体类案例的集合,将数据展示给用户,或者将客户请求封装成实体对象,传递给其他层。

    4.在系统开发中恰当使用配置文件,可以减少程序的修改,系统的发布,通常配置文件用来记录一些可能变动的常量,如数据库连接串中的IP等。Win Forms应用程序中使用App.config

    作为配置文件,用Configuration Manager类读取配置文件中的信息

    5.Const和readonly都可以用来修饰常量。

  • 相关阅读:
    int (*p)[10] 与*p[10]的区别
    运算顺序
    关于linux开机进入grub问题的解决方法
    对于特殊字符串的处理方法
    学习进度条
    阅读《实例化需求》4-6章有感
    学习进度条
    阅读《实例化需求》1-3章有感
    问题账户需求分析
    2016年秋季个人阅读计划
  • 原文地址:https://www.cnblogs.com/System-out-println/p/5314050.html
Copyright © 2020-2023  润新知