zoukankan      html  css  js  c++  java
  • .net core 实践笔记(三)--封装底层

    前言:

      有了前面的工作,简单的架子基本搭建起来了,因为条件有限,只能先测试SqlServer的了,源码放出来,也希望有兴趣的伙伴可以一起改善,相信可以成为未来进阶架构师的第一步,自己有小项目的时候可以直接拿来修改使用。

      因为第一次在.net core搭建,经验欠缺,不足之处,欢迎批评指正。

      后面将增加日志记录。

     

    ** 温馨提示:如需转载本文,请注明内容出处。**

    本文链接:https://www.cnblogs.com/grom/p/9972377.html

    源码:https://github.com/Xinzheng-Li/ASP.NET-Core-WebApi

    再次邀请大神们改善指点,感激不尽。

    概述

      如图,像前几篇所述,简单的搭建了三层架构,本篇重点封装底层 (WebApi.Repository)。

         

    说明

    • Model 层的文件夹用于EF进行从数据库拉取实体,因为没有字段备注,故将实体类修改后拖出文件夹,以免日后更新时被覆盖掉。

        

    • IDBRepository 接口,定义了最常用的五个数据库查询接口。

        

    • DBRepository 使用Dapper和Dapper.Contrib实现接口,同时指定实现接口的数据库类型,默认MSSQL,也可在派生类中改写。

        

    • ConnectionFactory 根据不同的数据库实例化Connect对象,这里因为条件有限,只写MSSQL和Mysql的,只测试了MSSQL。
    • CONN_STRING_MSSQL、CONN_STRING_MYSQL 为不同数据库的连接字符串,初始化时由Setup读取配置文件后赋值

        

    • SQLTYPE 默认数据库类型,设置后在调用ConnectionFactory.CreateSqlConnection()方法时作为缺省参数sqltype的默认值

        

    • appsettings.json 配置文件,配置数据库类型、所有数据库的配置字符串

        

    • URL: {Path}/api-docs/index.html

    测试

    选择Management API

        

    代码所有接口均已测试,这里只列举一个

        

    注意 

    • 初次编译代码需要重新制定文档路径。

        

    • 发布时需要手动复制 WebApi.WebApi.xml 文件至发布目录,或者修改文件属性为复制到输出目录。

        

    • Models下 DBContext.cd 通过EF拉取实体类会生成链接数据库的字符串,不用时最好删掉,拉取方法可查看前面的文章。

    添加日志

      本项目选用了NLlog作为日志输出,相信大家不会陌生。

      Setup里注入

      

      配置好配置文件便可使用,教程较多,这里不再赘述。

     种草

      希望有大神帮忙扩充优化,可以成为大家开发小项目时拿过来就能用的小框架。  =。=

  • 相关阅读:
    软件工程学习小结
    Java中protected方法访问权限的问题
    HDU1395 2^x mod n = 1 暴力题
    HDU1394 线段树求最小逆序数
    HDU2030 汉字统计
    HDU2028 最小公倍数
    mysql中如何创表以及添加各种约束条件
    数据库知识总结
    如何在dos命令中启动mysql或sql server 服务器的一些操作
    mysql如何建表
  • 原文地址:https://www.cnblogs.com/grom/p/9972377.html
Copyright © 2011-2022 走看看