创造DotNet Core轻量级框架【二】
10 题外话
上一篇文章感谢大家提出的各种小建议和各种讨论,但是在写文章的时候框架最最最基础的样子已经做出来了,所以大家的各种建议和意见我会在后续逐渐升级。
源码我会发给出来的,我的知识大部分来源网络上的各种社区,所以我做的框架完全开源,随意商用!~
后面的更新速度可能会慢一些,我想把很多知识吸收的更好之后在发出来。
11 Entity类

Entity类是实体类,类似于EF 5 6时代的视图形式,但是没有视图,只有cs文件,这样的好处是自由(可能是我EF 5用的不好,每次svn更新都会有很多异常),同样这样做的话即使刚刚使用框架的人也知道如何创建自己表的类库
DataTable文件夹就是用来存放这些cs文件的
NCSContext,用过的EF框架的人都知道,他的底层都是基于上下文这个类文件进行与数据库的交互沟通,其他封装的方法只不过是这个东西的一种衍伸。
里面的代码也很简单
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Text; namespace NCSCore.Entity
{
public class NCSContext : DbContext
{
public NCSContext()
{
}
public NCSContext(DbContextOptions<NCSContext> options)
: base(options)
{
} override protected void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{ base.OnConfiguring(optionsBuilder);
optionsBuilder.EnableSensitiveDataLogging();
} #region 数据集 #endregion
}
}
12 Dao类库
Dao类库也分为两个子层级,接口以及实现

接口类中定义所有基础类型接口,增删改查,调用sql语句,等等各种方法的基类,所有的实体类型都通过泛型T来进行传递。而业务层只需要调用Dao层的接口就可以。
Dao中的操作都是对DBContext上下文进行操作,也就是最后的对数据库的操作。而具体操作的封装是在Service中


13 Service类库

Service类库中带有基类服务,开发者只需要在这里定义自己的接口并调用Service的接口既可以调用具体业务并操作数据库,而为了不让开发者去关心底层到底如何运行的,在ServiceBase中只需要让开发者传递实体类或查询条件就行


14 WebAPI

WebAPI为第一个创建的类库,我们大部分的依赖注入,操作返回配置都是在WebAPI中定义以及重写,例如我的WebApi已经做好Dao层的注入以及Service的注入,并且配置了接口调试插件Swagger,而为了让框架更适用于各种发布后的情况
也做了可配置的数据库字符串,而WebAPI默认的5000端口不适用于但机器部署多个站点,所以也将端口号变为外部可配置。
这么做的好处是整体框架经常变化的内容都变为可配置,未来部署的时候不需要再做代码生成等调整。
15 小结
目前这个框架只是很雏形很雏形的样子,还没有进行大量的优化以及扩展或者变更,只是满足了可以快速开发一套中小型WebAPI程序,目前我没看到能进化成为一个大型项目可支撑的框架。后续也会继续写框架的升级以及每一块内容的含义。
写的不好请见谅
源码地址:https://github.com/NothingTech/NCSCore
程序员之家。偷文章都不加链接。。也是醉了。
创造DotNet Core轻量级框架【二】的更多相关文章
- 创造DotNet Core轻量级框架【一】
前言 net core 已经出了很久了,网上的各种框架也很多了,但是没看到一个很小很轻的框架,基本都是那种啥功能都有,但是我需要的功能只占他们框架的百分之几,很少很少,所以自己创造一个框架. 因为之前 ...
- DDD实战进阶第一波(三):开发一般业务的大健康行业直销系统(搭建支持DDD的轻量级框架二)
了解了DDD的好处与基本的核心组件后,我们先不急着进入支持DDD思想的轻量级框架开发,也不急于直销系统需求分析和具体代码实现,我们还少一块, 那就是经典DDD的架构,只有了解了经典DDD的架构,你才能 ...
- DOTNET Core MVC(二)路由初探
搁置了几天,工作忙的一塌糊涂,今天终于抽空来继续看看MVC的知识.先来看看MVC的路由是如何处理的.以下为替代的路由: app.UseEndpoints(endpoints => { endpo ...
- dotnet core 通过修改文件头的方式隐藏控制台窗口
原文:dotnet core 通过修改文件头的方式隐藏控制台窗口 在带界面的 dotnet core 程序运行的时候就会出现一个控制台窗口,本文告诉大家使用最简单方法去隐藏控制台窗口. 最近在使用 A ...
- 从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目
原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.ne ...
- 基于DotNet Core的RPC框架(一) DotBPE.RPC快速开始
0x00 简介 DotBPE.RPC是一款基于dotnet core编写的RPC框架,而它的爸爸DotBPE,目标是实现一个开箱即用的微服务框架,但是它还差点意思,还仅仅在构思和尝试的阶段.但不管怎么 ...
- spring cloud+dotnet core搭建微服务架构:服务发现(二)
前言 上篇文章实际上只讲了服务治理中的服务注册,服务与服务之间如何调用呢?传统的方式,服务A调用服务B,那么服务A访问的是服务B的负载均衡地址,通过负载均衡来指向到服务B的真实地址,上篇文章已经说了这 ...
- SonarQube系列二、分析dotnet core/C#代码
[前言] 本系列主要讲述sonarqube的安装部署以及如何集成jenkins自动化分析.netcore项目.目录如下: SonarQube系列一.Linux安装与部署 SonarQube系列二.分析 ...
- Dotnet core使用JWT认证授权最佳实践(二)
最近,团队的小伙伴们在做项目时,需要用到JWT认证.遂根据自己的经验,整理成了这篇文章,用来帮助理清JWT认证的原理和代码编写操作. 第一部分:Dotnet core使用JWT认证授权最佳实践(一) ...
随机推荐
- 第十三节:telnetlib、redis、threading模块
telnetlib模块案例: import telnetlib,re class TelnetInfo(): def telnetdo(self, host, port, command): tn = ...
- python干货-类属性和方法,类的方法重写
类属性与方法 类的私有属性 __private_attrs: 两个下划线开头,表明为私有,外部不可用,内部使用时self.__private_attrs. 类的方法 在类的内部,使用 def 关键字来 ...
- L23模型微调fine tuning
resnet185352 链接:https://pan.baidu.com/s/1EZs9XVUjUf1MzaKYbJlcSA 提取码:axd1 9.2 微调 在前面的一些章节中,我们介绍了如何在只有 ...
- Python之疑难杂症包安装
ansible 直接用pip install 安装一直失败 1.下载ansible压缩包 https://files.pythonhosted.org/packages/ec/ee/1494474b5 ...
- vue2.x学习笔记(二十三)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12639440.html. 渲染函数&JSX 基础 vue推荐在绝大多数的情况下使用模板来创建html.然而 ...
- vue2.x学习笔记(十九)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12631022.html. 程序化的事件侦听器 在前面的学习中,我们已经知道了[$emit]全局属性的用法,它可以被 ...
- Goldeneye 靶机过关记录
注:因记录时间不同,记录中1.111和1.105均为靶机地址. 1信息收集 1.1得到目标,相关界面如下: 1.2简单信息收集 wappalyzer插件显示: web服务器:Apache 2.4.7 ...
- 【转】动态规划之最长公共子序列(LCS)
[原文链接]最长公共子序列(Longest Common Subsequence,简称 LCS)是一道非常经典的面试题目,因为它的解法是典型的二维动态规划,大部分比较困难的字符串问题都和这个问题一个套 ...
- 大数据MapReduce相关的运维题
1.在集群节点中/usr/hdp/2.4.3.0-227/hadoop-mapreduce/目录下,存在一个案例 JAR 包 hadoop-mapreduce-examples.jar.运行 JAR ...
- 基于 HTML WebGL 的会展中心智能监控系统
前言 随着近几年物联网.万物互联等诸多概念的大行其道,智慧城市的概念也早已经被人们耳熟能详,而作为城市的组成部分,智慧建筑也是重中之重,智慧园区,智慧小区等也如雨后春笋般的相继出现. 智慧建筑是指通过 ...