• 实战数据访问层


    数据访问层仅仅负责管理数据库与业务逻辑层之间的通讯,不负责业务逻辑。

    技术上我们采用Entity Framework ,它是微软开发的基于ADO.NETORM(Object/Relational Mapping)框架。

    Entity Framework的主要特点:

    1. 支持多种数据库(Microsoft SQL Server, Oracle, and MySQL);

    2. 能很好地支持表,视图和存储过程;

    3. 提供Visual Studio集成工具,进行可视化操作;

    创建ADO.NET 实体数据模型项目

    在项目上点击右键,添加->新建项

    选择"ADO.NET 实体数据模型"

    从数据库生成,新建连接,选择数据源

    填写连接需要的数据库信息后,点击下一步

    注意:只选择"在模型中加入外键列"

    可以看到新生成了两个文件"App.Config"和"Model1.edmx":

    "App.Config"里面是数据库连接字符串

    "Model1.edmx" 里面是数据实体类和访问数据库的上下文

    注意:Model1.edmx文件是Entity Framework自动生成的,不做修改,因为每次更新会覆盖。

    修改ADO.NET 实体数据模型项目

    每次修改实体模型的时候,都全选(ctrl+A)并删掉所有实体,然后在Model1.edmx文件空白处上点击右键,选"从数据库更新模型"

    选择需要的表和视图,点击完成即可。

    分析总结

    我们将系统需要的基础类放在"Framework"文件夹中,所有的实体数据都需要继承IBaseEntity接口,所有的数据库表操作都需要继承BaseRepository抽象类,所有视图操作都需要继承BaseViewRepository抽象类

    下面我们以SysException单表的增删改为例,进行介绍:

    这里使用了分部类(partial class)对实体数据SysException进行扩展,加入自定义的属性,使用SysExceptionMetadata类对SysException进行数据验证,以保障数据的完整性和正确性。

    数据访问层中的SysExceptionRepository执行数据库中的增删改查操作。

    以上我们完成了数据访问层的设计,此架构的代码实现,请参考www.langben.com

  • 相关阅读:
    11. Container With Most Water
    面试题------前端框架与其他
    python----生成器--列表推导式-----内置函数-----
    python----函数-----有参装饰器----迭代器
    python---闭包函数应用---装饰器
    python----函数-----名称空间与作用域 闭包函数
    python ----函数
    python---函数
    文件操作
    集合 文件部分操作
  • 原文地址:https://www.cnblogs.com/angben/p/3068248.html
Copyright © 2020-2023  润新知