前言

  学习过程中,使用的是.Net 5 WebApi项目,数据库使用的是SQL Server,主要会整理下常用的api,现在就开始吧~
 

初始化

  先选择一个WebCoreApi项目进行创建,创建完项目后就该引入FreeSql了;
  首先引入FreeSql,根据官方文档的说法得引入一个FreeSql包和一个数据库驱动,驱动根据项目需要选择,这里用的数据库是SqlService,所以安装FreeSql.Provider.SqlServer;
  引入可以选择命令行(工具=》Nuget包管理器=》程序包管理控制台)或者直接在Nuget中搜索FreeSql
  这里先引入了FreeSql包以及一个SqlServer的驱动包
 
Install-Package FreeSql
Install-Package FreeSql.Provider.SqlServer

 

 
  

声明

  接下来就是在项目种注入FreeSql实例了,注入前别忘了数据库配置连接字符串,官方文档建议以单例声明,而不是每次使用的时候创建,UseAutoSyncStructure()方法的参数作为条件判断是否对比实体与数据库结构之间的变化,以实现自动迁移;
 
IFreeSql freeSql = new FreeSqlBuilder()
.UseConnectionString(DataType.SqlServer, Configuration.GetConnectionString("SqlServerConnection"))
.UseAutoSyncStructure(True)
.Build(); services.AddSingleton(freeSql);

  

  至此,FreeSql实例就注好了,Startup.cs文件如下,Swagger是因为创建项目时勾选了OpenApi
 

  

  注意:这里的IFreeSql是ORM最顶级对象,所有操作都是使用他的方法或属性(官方原文):
fsql.Select<T>(); //查询
fsql.Insert<T>(); //插入
fsql.Update<T>(); //更新
fsql.Delete<T>(); //删除
fsql.InsertOrUpdate<T>()// 插入或更新
fsql.Transaction(..); //事务 fsql.CodeFirst; //CodeFirst 对象
fsql.DbFirst; //DbFirst 对象
fsql.Ado; //Ado 对象
fsql.Aop; //Aop 对象
fsql.GlobalFilter; //全局过滤器对象

  

这样就注入完成了,下面就能开始使用FreeSql了~~~~~~~~

 
 
 

FreeSql学习笔记——1.入门的更多相关文章

  1. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

  2. WebSocket学习笔记——无痛入门

    WebSocket学习笔记——无痛入门 标签: websocket 2014-04-09 22:05 4987人阅读 评论(1) 收藏 举报  分类: 物联网学习笔记(37)  版权声明:本文为博主原 ...

  3. Java学习笔记之---入门

    Java学习笔记之---入门 一. 为什么要在众多的编程语言中选择Java? java是一种纯面向对象的编程语言 java学习起来比较简单,适合初学者使用 java可以跨平台,即在Windows操作系 ...

  4. DBFlow框架的学习笔记之入门

    什么是DBFlow? dbflow是一款android高性的ORM数据库.可以使用在进行项目中有关数据库的操作.github下载源码 1.环境配置 先导入 apt plugin库到你的classpat ...

  5. MongoDB学习笔记:快速入门

    MongoDB学习笔记:快速入门   一.MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.M ...

  6. 学习笔记_J2EE_SpringMVC_01_入门

    1.    概述 笔者作为一个不太正经的不专业佛教信仰者,习惯了解事物的因果关系,所以概述就有点BBB...了.如果不喜欢这些的,请自行跳过概述章节,直接进入第二章的操作实践:2 入门示例. 1.1. ...

  7. dubbo入门学习笔记之入门demo(基于普通maven项目)

    注:本笔记接dubbo入门学习笔记之环境准备继续记录; (四)开发服务提供者和消费者并让他们在启动时分别向注册中心注册和订阅服务 需求:订单服务中初始化订单功能需要调用用户服务的获取用户信息的接口(订 ...

  8. SpringBoot学习笔记<一>入门与基本配置

    毕业实习项目技术学习笔记 参考文献 学习视频 2小时学会Spring Boot:https://www.imooc.com/learn/767 学习资料 SpringBoot入门:https://bl ...

  9. [学习笔记]SiftGPU入门

    当有读者看到我这篇SiftGPU入门的学习笔记时,相信你已经读过了高博那篇<SLAM拾萃:SiftGPU>,那篇文章写于16年,已经过去两年的时间.在我尝试配置SiftGPU的环境时,遇到 ...

  10. [学习笔记] pymysql入门

    一.快速开始 对于会用MySQL的朋友来说,开始使用pymysql可以说真的so esay,只要用下面的代码,把想要对数据库的操作放在 sql = " " 里就可以了. 没有接触过 ...

随机推荐

  1. Python数据爬取处理可视化,手把手全流程教学

    这篇博客中,选取openjudge网站上"百练"小组中的用户答题数据,作为材料进行教学 目录 爬取主页面内容 主页面内容提取 需求数据爬取 数据处理 数据分析 网站地址:http: ...

  2. Vue.js 组件数据交互

    1.前言 本节讲述组件之间如何进行数据交互 2.props属性与非 prop 的属性 父组件通过属性绑定的形式传值给子组件,这种传值分2种 类别 含义 说明 props 子组件本身已经通过props定 ...

  3. PM2部署DotNet应用程序

    pm2简介 PM2是一个Node.js的进程管理工具,可以帮助开发者简化Node.js应用的部署和运维.它提供了进程守护.负载均衡.日志管理等功能,可以监控应用程序的运行状态,并在发生意外情况时自动重 ...

  4. fiddler:The system proxy was changed.Click to reenable capturing

    前情 最近在开发一个老旧项目,由于本地环境已难跑起,于是想通过代理线上代码进行功能开发. 坑位 启动fiddler后,fiddler菜单栏会警告,大概意思是代理被更改了,点击重启fillder代理,但 ...

  5. docker安装Nginx并运行vue3前端

    Docker安装Nginx #获取Nginx docker pull nginx #查端口 netstat -ntlp #建本地目录 mkdir -p /home/nginx/www /home/ng ...

  6. 【Amadeus原创】域用户完美执行应用程序

    企业环境中,为了安全起见一般都没有赋予域用户或者企业的PC客户端用户管理员权限. 但偶尔会有个别的程序一定需要管理员身份才能执行,如财务某些程序或专业的应用程序.那么如何不赋予用户管理员权限及密码但又 ...

  7. Qt/C++地图标注点的添加删除移动旋转/指定不同图标和动图/拿到单击信号

    一.前言说明 标注点在地图开发中是最常见的应用场景之一,比如在地图上需要显示设备的位置,基本上都是添加标注点,指定图片和尺寸已经经纬度坐标位置.这个功能在每种地图内核中都提供的,这个并没有任何难点,在 ...

  8. Qt编写视频监控系统73-不同视频流不同类型的判断和解析(http/m3u8/rtsp/rtmp等)

    一.前言 这套视频监控系统大概从2018年起步整体框架,一步步积累到现在,中间经历了无数次的各种视频文件.视频流.视频设备的播放测试,比如光视频文件就有mp4/wmv/rmvb/mkv/avi等格式, ...

  9. Qt编写安防视频监控系统26-硬件加速

    一.前言 硬件加速这个功能在一年多以前就已经具备,当时对两个内核一个是ffmpeg内核.一个是vlc内核都做了对应的接口函数,只是当时为了简单没有在系统设置中做出接口,vlc做硬件加速不用自己写代码实 ...

  10. [转]Automatic Image Stitching with Accord.NET

    原文链接:Automatic Image Stitching with Accord.NET