【转】ABP源码分析二十九:ABP.MongoDb

这个Module通过建立一个MongoDbRepositoryBase<TEntity> 基类,封装了对MongoDb数据库的操作。 这个module通过引用MongoDB.Driver,MongoDB.Bson,MongoDB.Driver.Core,MongoDB.Driver.Legacy类库来操作MongoDb. 当项目不需要依赖于关系型数据库时,可以考虑引入MongoDB以及这个module。

 

ABP.MongoDb模块涉及到的接口和类如下,结构清晰,简单。

IAbpMongoDbModuleConfiguration/AbpMongoDbModuleConfiguration: 封装了ConnectionString和DatatabaseName两个属性,

AbpMongoDbModule:完成module的初始化:register AbpMongoDbModuleConfiguration 和 RegisterAssemblyByConvention (前面章节已有说明)

 

 

IMongoDatabaseProvider: 该接口定义了一个返回MongoDatabase对象的方法。

UnitOfWorkMongoDatabaseProvider:实现了IMongoDatabaseProvider接口,从MongoDbUnitOfWork实例中获取MongoDatabase对象。

 

MongoDbUnitOfWork:根据AbpMongoDbModuleConfiguration,创建MongoDatabase实例

MongoDbRepositoryBase<TEntity, TPrimaryKey>:针对MongoDb创建的仓储器,支持主键是泛型的Entity.

MongoDbRepositoryBase<TEntity>:针对MongoDb创建的仓储器,支持主键是int类型的Entity.

返回ABP源码分析系列文章目录

 

老大,你在第一篇,整体目录结构说MongoDB这个模块是个鸡肋,具体原因没说,这里也没写,到底是什么哇?


原因请参见: ABP源码分析十:Unit Of Work

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436587.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html防替换资源,Webpack中有没有替换html静态资源的插件

比如html文件中有如下代码<div><!-- /dev 是开发目录 --><img src"/dev/img.png"></div>然后经过处理后变成如下<div><!-- /static 是上线目录, a7l3k2n是图片的hash --><!-- 同时把img.png从/dev目录移动到/static目录 --&g…

【转】ABP源码分析三十:ABP.RedisCache

ABP 通过StackExchange.Redis类库来操作Redis数据库。 AbpRedisCacheModule&#xff1a;完成ABP.RedisCache模块的初始化(完成常规的依赖注入) AbpRedisCacheConfig&#xff1a;定义了connectionStringKey和databaseIdAppSetting的值。这两个值对象redis 在web.config中的key值…

平板可以看html文档吗,iPad如何看电脑里的视频 如何使用Ipad看电脑里的电影

电脑上的视频怎么在iPad上观看&#xff1f;如何在ipad播放电脑中的视频首先&#xff0c;看你的视频格式。如果是mp4&#xff0c;就可以直接放入ipad自带浏览器或者通过itunes直接传。其他格式的需要下载第三方播放器&#xff0c;目前使用较多的支持高清播放的有Oplayer&#xf…

【转】ABP源码分析三十一:ABP.AutoMapper

这个模块封装了Automapper,使其更易于使用。 下图描述了改模块涉及的所有类之间的关系。 AutoMapAttribute&#xff0c;AutoMapFromAttribute和AutoMapToAttribute&#xff1a;这三个attribute用于标注一个类到另外一个类的map方向。 AutoMapperHelper: 通过调用Automapper的A…

SQL语言的事务机制_转摘

什么是数据库事务  数据库事务是指作为单个逻辑工作单元执行的一系列操作。设想网上购物的一次交易&#xff0c;其付款过程至少包括以下几步数据库操作&#xff1a;   更新客户所购商品的库存信息    保存客户付款信息--可能包括与银行系统的交互    生成订单并且保…

html背景定位,css background-position center left right top bottom代表意思

background-position:center right这里center right分别代表什么,引入对图片背景定位介绍background-position是用于定位背景图片中对象中显示定位&#xff0c;比如图片作为背景时在对象内什么位置开始显示&#xff0c;显示样式等。比如让一个图片作为对象背景距离对象左边或右…

【转】ABP源码分析三十二:ABP.SignalR

Realtime Realtime是ABP底层模块提供的功能&#xff0c;用于管理在线用户。它是使用SignalR实现给在线用户发送通知的功能的前提 IOnlineClient/OnlineClient: 封装在线用户的信息 OnlineClientManager/IOnlineClientManager: 用于提供基本维护在线用户的方法。其内部维护了…

【转】ABP源码分析三十三:ABP.Web

ABP.Web模块并不复杂&#xff0c;主要完成ABP系统的初始化和一些基础功能的实现。 AbpWebApplication : 继承自ASP.Net的HttpApplication类&#xff0c;主要完成下面三件事 一&#xff0c;在Application_Start完成AbpBootstrapper的初始化。整个ABP系统的初始化就是通过AbpBoo…

【转】ABP源码分析三十四:ABP.Web.Mvc

ABP.Web.Mvc模块主要完成两个任务&#xff1a; 第一&#xff0c;通过自定义的AbpController抽象基类封装ABP核心模块中的功能&#xff0c;以便利的方式提供给我们创建controller使用。 第二&#xff0c;一些常见的基础功能的实现。 AbpController&#xff1a;这是一个抽象基类…

地球化学图解系统GCDPlot 0.33

地球化学 图解 系统GCDPlot 0.33发布&#xff0c;新增了Excel 2007支持。下载 地址&#xff1a;GCDPlot下载GCDPlot 是一个进行地球化学图解、CIPW计算的 Microsoft Excel VBA 程序&#xff0c;GCDPlot 可以使用 Excel 的数据以标准的 Excel 图表格式绘制各类地球化学图解&am…

【转】ABP源码分析三十五:ABP中动态WebAPI原理解析

动态WebAPI应该算是ABP中最Magic的功能之一了吧。开发人员无须定义继承自ApiController的类&#xff0c;只须重用Application Service中的类就可以对外提供WebAPI的功能&#xff0c;这应该算是对DRY的最佳诠释了. 如下图所示&#xff0c;一行代码就为所有实现了IApplicationSer…

jstl处理栏目与子栏目_Detelogy智能前处理设备微展厅P2:再添新品

时隔小半年&#xff0c;新一轮Detelogy产品总览展示栏目再与大家见面。事不宜迟&#xff0c;点击视频即刻进入我们的智能前处理设备微展厅。 知乎视频​www.zhihu.com01 高效多样品前处理系统02 智能浓缩设备全系列03 智能湿法消解设备应用领域农残、兽残检测有机磷类、有机氯类…

【转】ABP源码分析三十六:ABP.Web.Api

这里的内容和ABP 动态webapi没有关系。除了动态webapi&#xff0c;ABP必然是支持使用传统的webApi。ABP.Web.Api模块中实现了一些同意的基础功能&#xff0c;以方便我们创建和使用asp.net webApi。 AbpApiController&#xff1a;这是一个抽象基类&#xff0c;继承自ApiControl…

408最后计算机网络题库,2021考研计算机统考408专业基础综合题库

**部分为历年考研真题。提供2009&#xff5e;2018年考研真题及参考答案&#xff0c;其中2009&#xff5e;2015年每道真题均提供详细答案解析&#xff0c;通过对真题的演练和分析&#xff0c;可以帮助学员牢牢抓住计算机学科专业基础综合考试的命题特点&#xff0c;提高复习效率…

Unity-Shader-渲染队列,ZTest,ZWrite

Unity-Shader-渲染队列&#xff0c;ZTest&#xff0c;ZWrite ZTest&#xff08;深度测试&#xff09;和ZWrite&#xff08;深度写入&#xff09;ZTest Less&#xff08;深度小于当前缓存则通过&#xff09;ZTest Greater&#xff08;深度大于当前缓存则通过&#xff09;ZTest L…

如何做好职业规划(乾卦)

职业一般来说会占用我们每个人生命中的大部分时间&#xff0c;而职业发展中变化莫测的因数常常令我们束手无策、捉襟见肘。在面对变化多端的情况时&#xff0c;中国人的传统智慧就发挥出最大的优势了。如何将快速变化 、不好掌控的事情处理得井井有条&#xff0c;这需要我们懂得…

850是什么意思_沃尔沃为什么不是一线豪华品牌?

1927年诞生的沃尔沃&#xff0c;它造车的历史比宝马还要略早几年。但经过近百年的发展&#xff0c;宝马品牌无论在国际上还是我们国内&#xff0c;以销量还是品牌含金量来看&#xff0c;都是众所公认的豪华品牌第一阵营成员&#xff08;奔驰、宝马&#xff0c;奥迪&#xff09;…

【转】ABP源码分析三十七:ABP.Web.Api Script Proxy API

ABP提供Script Proxy WebApi为所有的Dynamic WebApi生成访问这些WebApi的JQuery代理&#xff0c;AngularJs代理以及TypeScriptor代理。这些个代理就是javascript脚本,通过这些代理可以简单的访问Dynamic webApi。 如下实例演示一个最基本的应用场景。首先通过Script Proxy Web…

word2003如何设置护眼模式_手机屏幕的护眼模式是如何保护你的眼睛?

公司业务包括&#xff1a;二手机回收&#xff0c;二手机销售&#xff0c;配件批发&#xff0c;以及手机维修等业务&#xff0c;目前公司业务覆盖山西全境以及周边省市&#xff0c;在同行业有较高知名度。 随着智能手机的普及&#xff0c;大多数人也逐渐开始沉迷于每天的刷手…

WinCE系统的编译过程

作者&#xff1a;ARM-WinCE 在WinCE系统中&#xff0c;当我们完成了相关的开发和系统定制工作以后&#xff0c;会编译WinCE系统&#xff0c;最后生成NK.bin和NK.nb0。我现在用WinCE6.0在自己的PC上面编译一次用时19分16秒(有一天无聊&#xff0c;就测了一下)。下面介绍一下WinC…