摘要:
在一些项目中,我们经常会用到跨域,在jquery ajax时代,还采用的jsonp的方式进行跨域请求。但这种方式的安全性很低,api端对所有请求均开放了。 如今,NET CORE发展也是越来越完善了,对于跨域,也有完善的策略。 今天我们就来详细讲讲 跨域 到底是怎么一回事儿。 以下示例均以 JQue 阅读全文
摘要:
在一个项目当中,我们经常会有很多不同的环境的参数需要配置,比如 以登录cookie要写的domain为例吧开发环境的配置:一般是localhost 测试环境:内部解析的测试域名 UAT用户验收测试环境:一般是生产环境上解析的一个域名,环境与生产环境基本一致。 生产环境:正式环境,对外运营使用的域名。 阅读全文
摘要:
在前面的文章中,我们介绍过将appsetting等配置文件映射到实体的的方式https://www.cnblogs.com/fei686868/p/16779249.html 这里呢,我们介绍关于选项的另一种用法,就是通过IOptions等选项来使用。 他们的区别呢,以前那种是只实现映射,如果要注入 阅读全文
摘要:
本篇文章介绍过滤器以下几点知识点 1、什么是过滤器 2、过滤器的执行流程 3、过滤器的作用域 4、过滤器的工作原理 5、过滤器的5种类型 6、取消和短路 7、过滤器的注入写法 8、同种过滤器自定义顺序 1、什么是过滤器? .NET 中的过滤器(Filter)是 AOP(面向切面编程) 思想的一种实现 阅读全文
摘要:
我们知道,如果在业务界面上删除一条数据,通常的做法是与后台通信,从数据库表中删除掉这一条记录,这种方式通常被称为硬删除。然而这种方式会带来一个弊端,即数据一旦删除了,就真的永久删除了,没有后悔药可以吃,也没有办法恢复。这样,在一些场景中,比如需要保留用户删除的痕迹或能够恢复删除的数据的时候,硬删除就 阅读全文
摘要:
项目支持的环境:.NETCORE Standard 2.0 本项目基于NPOI组件,实现对常规格式的excel导入导出封装。 导出的excel格式,符合office格式,并非html格式的。 很多朋友应该都接触过NPOI,但是写一个导入导出,还是很繁琐的,基于此,我们封装了一个组件 请从nuget上 阅读全文
摘要:
/// <summary> /// 过滤词DFA算法实现 /// </summary> public class ForbiddentWordLibrary { /// <summary> /// 用分行过滤词文件来初始化过滤词库 /// </summary> /// <param name="pa 阅读全文
摘要:
支持.NET/.NET Framework/.NET Core RabbitMQ作为一款主流的消息队列工具早已广受欢迎。相比于其它的MQ工具,RabbitMQ支持的语言更多、功能更完善。 本文提供一种市面上最/极简单的使用RabbitMQ的方式,只需要会调用以下三个方法,你就几乎可以掌握整个Rabb 阅读全文
摘要:
对于很多初学NETCORE的同学来说,怎么从appsettings.json 文件中获取各种类型数据,一直没搞明白。 今天我们就对它的几种数据格式的读取做个说明。 appsettings.json 是我们项目的默认配置文件(我们也可以自定义其他.json文件,加到项目中),其是以json格式进行数据 阅读全文
摘要:
1.使用 EF.Functions.xxx 进行查询 (1).使用 EF.Functions.Like进行模糊查询要比 StartsWith、Contains 和 EndsWith 方法生成的SQL语句性能更优。 A. Contains语句,生成的sql为: var data3 = dbContex 阅读全文
摘要:
我们可以在PowerShell或者CMD命令行窗口里面进行迁移,使用命令行迁移分为下面的两个步骤。 首先我们要进入CodeFirst.DAL目录下面,然后执行下面的命令添加迁移: dotnet ef migrations add MyCodeFirst13 此时,有可能提示 dotnet ef 命令 阅读全文
摘要:
二、程序包管理控制台迁移 需要在DAL层引用包:Microsoft.EntityFrameworkCore.Tools 然后在控制台程序中也需要引用包:Microsoft.EntityFrameworkCore.Design 这样,就完成了需要的组件的引用了。 接下来打开程序包管理控制台,在vs中的 阅读全文
摘要:
生成数据库表有下面的三种方式: 代码生成。 程序包管理器控制台迁移。 命令行迁移。 下面分别介绍上面的三种方法。以下示例均采用netcore3.1+mysql数据库 一、代码生成 该种方式比较简单,只适用于第一次生成,如果库中有表了,则生成失败。 这种只适用于一次性生成的,对于实际应用的项目,过程中 阅读全文
摘要:
往常我们二维码可能都是后端去处理,构建一个image对象,最后输出image二进制流,然后前端定义一个img 控件去展示。 但这有个弊端,就是流传输的比较大,当流量大的时候,不仅浪费流量,而且还会严重影响服务器的性能。 所以本文介绍一种方式后端只提供相关json格式的数据即可,图片在前端进行生成。 阅读全文
摘要:
上一篇链接:https://www.cnblogs.com/fei686868/p/16721769.html 在上一篇中,我们介绍了CAP基于内存存储的应用。本篇我们介绍下,把存储做到mysql中,队列还是使用内存队列。 mysql中主要存储是消息的内容以及状态。 在nuget上,我们引入 Dot 阅读全文
摘要:
官方文档: https://cap.dotnetcore.xyz/user-guide/zh/getting-started/quick-start/ 在前面的文章中,我们介绍过 Abp自带的本地事件总线,但它有几点不足 1:缺乏失败重试机制,即若发布事件失败或者订阅事件处理失败,他没有重试机制,导 阅读全文
摘要:
在上一篇中,我们学习介绍了Abp本地事件的基础应用,但都没有涉及到数据库层面的执行。 在数据操作上,abp也提供了很好的事件处理机制,针对数据的增删改操作默认发布了事件,我们只需要订阅对应事件即可。 同时,在上一篇中,我们也提供了abp的订阅是非原子性的,也就是订阅端如果处理失败,是没有事务回滚或者 阅读全文
摘要:
事件总线,是我们在处理分布式和微服务的时候经常需要用到的,用于分布式事务解决方案。 事件总线基本就2个逻辑,1个发布事件,1个是订阅事件。 abp的本地事件是非异步的!!! abp也提供了事件总线的处理机制 下面跟着学习本地事件总线 abp官网文档地址:https://docs.abp.io/zh- 阅读全文
摘要:
本篇内容需要结合上一篇 https://www.cnblogs.com/fei686868/p/16625289.html 官方地址:https://docs.abp.io/zh-Hans/abp/latest/API/Dynamic-CSharp-API-Clients 在上一篇中,我们讲到了自动 阅读全文
摘要:
官方文档地址:https://docs.abp.io/en/abp/latest/API/Auto-API-Controllers 详细的请阅读官方文档,这边侧重简化说明怎么应用和一些注意要点。 自动API,即代码端只需要定义服务层即可,无需每一个服务层方法都对应在控制器中编写一个action。 这 阅读全文