轮子来袭 vJine.Core Orm 之 03_架构分析

如上图所示,vJine.Core ORM的特点如下:
所有操作均以DataManager为核心;
- DataManager业务部分的增删改查操作依赖于Class<>.I/D/U/Q;而I\D\U\Q通过传递泛型参数的形式与业务模型层关联;
- DataManager数据库部分通过DbProviderFactory和IDbAdapter完成对不同数据库、不同方法的操作, DbProviderFactorires负责数据库提供程序的实例化,IDbAdapter负责数据库操作的语法转换。
- 使用方式请参见博文:《轮子来袭 vJine.Core Orm 之 01_快速体验》;
- 代码生成参见:《轮子来袭 vJine.Core Orm 之 02_代码生成》;
注:vJine.Core ORM支持Model First和Code First方式编程,除自定义类型(如枚举)外均可有程序处理。
当前集成的数据库有SQLite、MySQL、MSSQL、Oracle,数据类型映射参见《vJine.Core ORM 数据类型映射》。
框架可实现IDbAdapter扩展,详情参见《轮子来袭 vJine.Core Orm 之 05_快速开发》。
- 代码已托管于git.oschaina.net版本库vJine.Core。
- 授权方式为MPL 2.0。
- 目前支持如下提交:IDbAdapter实现、软件Bug、性能改进;同时您也可以提出架构上的建议、意见。
之所以以"轮子来袭"为题头主要取其三个意思,太多、太普通、太频繁;当您点开这篇博文并读到了此处,说明您与vJine.Core ORM这个轮子所注定的缘分;
如果您喜欢vJine.Core,那就朝着"推荐"猛点吧,但务必确保是奇数次哦,您懂的,先谢谢啦。
轮子来袭 vJine.Core Orm 之 03_架构分析的更多相关文章
- 轮子来袭 vJine.Core Orm 之 04_使用进阶
1.配置文件: 框架默认情况下支持"connectionStrings"的配置方式,如<轮子来袭 vJine.Core Orm 之 01_快速入门>所述: 框架的进阶设 ...
- 轮子来袭 vJine.Core Orm 之 01_快速体验
vJine.Core 是.Net环境下C#类库,在其包含的众多功能中ORM功能尤为突出,现简介如下. 一.支持的数据库: SQLite, MySQL, MS SQL, Oracle. 二.使用方法: ...
- 轮子来袭 vJine.Core Orm 之 02_代码生成
1.下载并安装动软代码生成器: 2.下载vJine.Core.Orm模板: 3.解压模本文件并复制到如下的动软代码生成器模板目录: 4.打开动软代码生成器会看到模板已识别加载: 5.选择模板代码批量生 ...
- 轮子来袭 vJine.Core 之 AppConfig<T>
1.引用vJine.Core; 2.定义配置类; using System; using System.Collections.Generic; using System.Text; using Sy ...
- .Net Core ORM选择之路,哪个才适合你 通用查询类封装之Mongodb篇 Snowflake(雪花算法)的JavaScript实现 【开发记录】如何在B/S项目中使用中国天气的实时天气功能 【开发记录】微信小游戏开发入门——俄罗斯方块
.Net Core ORM选择之路,哪个才适合你 因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别 ...
- vJine.Core 0.3.0.49 正式发布
nuget: https://www.nuget.org/packages/vJine.Core/ oschina: http://git.oschina.net/vjine/vJine.Core/a ...
- 手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)
背景 公司去年开始使用dotnet core开发项目.公司的总体架构采用的是微服务,那时候由于对微服务的理解并不是太深,加上各种组件的不成熟,只是把项目的各个功能通过业务层面拆分,然后通过nginx代 ...
- spring cloud+dotnet core搭建微服务架构:服务发现(二)
前言 上篇文章实际上只讲了服务治理中的服务注册,服务与服务之间如何调用呢?传统的方式,服务A调用服务B,那么服务A访问的是服务B的负载均衡地址,通过负载均衡来指向到服务B的真实地址,上篇文章已经说了这 ...
- spring cloud+dotnet core搭建微服务架构:Api网关(三)
前言 国庆假期,一直没有时间更新. 根据群里面的同学的提问,强烈推荐大家先熟悉下spring cloud.文章下面有纯洁大神的spring cloud系列. 上一章最后说了,因为服务是不对外暴露的,所 ...
随机推荐
- Android AIDL 一探究竟
AIDL ---(Android Interface Definition Language)Android接口定义语言 简述: 1.什么时候使用? 通信方式 使用场景 AIDL IPC .多个应用程 ...
- Xcode8适配iOS10.1真机测试
将10.1测试包相关文件存放到指定位置,如图步骤提示: 解压文件:
- Android虚拟环境的工具集Genymotion完整安装教程
Genymotion提供Android虚拟环境的工具集.相信很多Android开发者一定受够了速度慢.体验差效率及其地下的官方模拟器了.如果你没有物理机器,又不想忍受官方模拟器的折磨,Genymoti ...
- 使用python编写批量卸载android应用的脚本
该脚本的功能是卸载android手机中安装的所有第三方应用,主要是使用adb shell pm.adb uninstall 命令,所以使用的前提是需要配好adb的环境变量,下面上代码: #!/usr/ ...
- [React Native] Build a Separator UI component
In this lesson we'll create a reusable React Native separator component which manages it's own style ...
- PAT 1015
1015. Reversible Primes (20) A reversible prime in any number system is a prime whose "reverse& ...
- DRM in Android
我们Tieto公司的MM专家在<程序员>第8期上发表了一篇关于DRM的文章,请大家指教. DRM in Android DRM,英文全称为Digital Rights Management ...
- SVN 之 去掉SVN管理标记
当项目不需要SVN标志的时候, 方式一:很多人设置Windows显示隐藏文件,然后将项目中的所有.svn文件删除,这种方法是最笨的方法. 方式二:通过注册表方式 [1]新建一个文本文件.文本的内容为: ...
- Android(java)学习笔记124:Android权限大全
访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES读取或写入登记check-in数据库属性表的权限 获取错略位置 android.permissio ...
- Convert Date between LocalDateTime
http://blog.progs.be/542/date-to-java-time Java8 has new date and time classes to “replace” the old ...