随笔分类 - dotnet_core_micro_service
此分类主要用来研究dotnet core微服务相关
摘要:上一节,是广播日志message到很多的receivers. 这节,我们讲订阅其中的一个子集。例如,我们想可以把危机的error message导到log file。而仍然可以打印所有的log messages到控制台。 这里使用到Direct exchage Direct exchange 在使用
阅读全文
摘要:上一个教程中,我们创建了一个work queue. 其中的每个task都会被精确的传送到一个worker. 这节,我们将会讲把一个message传送到多个consumers. 这种模式叫做publish/subscribe(发布/订阅). 为了说明这种模式,我们将创建一个简单的日志系统(loggin
阅读全文
摘要:目录: 轮询调度(Round-robin dispatching):即依次分配分配任务给worker。 消息答复(Message acknowledgement):在consumer处理完之后,进行消息答复。避免杀掉worker后,message消息。 消息持久化(Message durabilit
阅读全文
摘要:RabbitMQ就是一个消息代理(message broker),可以用来接收和发送消息。 消息队列有一些黑话,我们来看下: Producer : 发送message的程序 Queue : 可以用来存储message Consumer : 接收message的程序 注意,producer 和 con
阅读全文
摘要:这里主要记录下asp.net core web页面上进行导入导出excel的操作。 主要是导入,因为现在使用的很多前端框架(例如kendo ui)本身就有导出的功能。 这里使用到EPPlus.Core,其实对于excel的导入导出还可以使用NPOI, 这里讲解EPPlus的方式 1.创建asp.ne
阅读全文
摘要:目录: 一. Quartz的API 二.Trigger 的使用 三.使用 JobDataMap 来往Job中传值 四. Calendars 五.SimpleTrigger 六.CronTrigger 一. Quartz的API IScheduler - 与 scheduler 进行交互的主要接口 I
阅读全文
摘要:这里讲下,quartz这种任务调度程序的简单使用 这是使用的quartz的3.x 版本 2.x 版本与此稍有区别,可以在网上查看2.x版本教程 使用语言为c# quartz的使用分为几个步骤 其中2步骤也可以放到步骤5后面 另外,别忘记在nuget管理器中引入quartz 代码如下 运行程序,效果图
阅读全文
摘要:这里列举几个经过验证的可用的CORS使用示例, 方便在需要的时候可以直接使用 示例1 这种比较常见,即在ConfigureServices中添加中间件及定义其策略;而在Configure中把中间件设置到管道中 示例2 注意,这个示例中,直接在Configure中的app.UseCors中设置的跨域的
阅读全文
摘要:这一节主要讲如何测试跨域问题 你可以直接在官网下载示例代码,也可以自己写,我这里直接使用官网样例进行演示 样例代码下载: Cors 一.提供服务方,这里使用的是API 1.创建一个API项目。或者直接下载样例代码 2.像之前讲的那样设置允许CORS,例如: 使用的时候,注意 WithOrigins(
阅读全文
摘要:接上篇的允许跨域 4.CORS 策略(Policy)的选项 这里讲解Policy可以设置的选项: 设置允许的访问源 设置允许的HTTP methods 设置允许的请求头(request header) 设置暴露的响应头(response header) 跨不同源请求的证书(Credentials)
阅读全文
摘要:这篇文章介绍如何允许跨域访问 浏览器安全不允许不同域名的网页之间发送请求。这种限制叫做同源策略(the same-origin policy)。 同源策略可以防止一个恶意的站点读取另一个站点的敏感数据。 有时候,你想允许网站发送跨域的请求到你的应用。 Cross Origin Resource Sh
阅读全文
摘要:对于没有包含认证(authentication),的项目,你可以使用基架(scaffolder)把 Identity的程序集包加入到项目中,并且选择性的添加Identity的代码进行生成。 虽然基架已经生成了很多必须的代码,但是你仍然需要更新你的项目来完善这个过程。 这篇文章主要就是解释完善Iden
阅读全文
摘要:ASP.NET Core 的 identity 是一种需要用户登录的会员系统,用户可以创建一个登录信息存储在 Identity 的的账号, 或者也可以使用第三方登录,支持的第三方登录包括:Facebook, Google, Microsoft Account, and Twitter. Identi
阅读全文
摘要:Dapper也是是一种ORM框架 这里记录下,使用ASP.NET 集成 Dapper 的过程,方便自己查看 至于Dapper的特性以及操作可以参考Dapper官方文档 1.创建数据库相关 在Sql Server 创建一个叫做 DapperDemo 的数据库 再创建一个叫做 Products 的表 脚
阅读全文
摘要:因为官网asp.net core webapi教程部分,给出的是使用内存中的数据即 UseInMemoryDatabase 的方式, 这里记录一下,使用SQL Server数据库的方式即 UseSqlServer 的方式。 环境说明: 这里使用的是win 7 下的 virtual studio 20
阅读全文
摘要:中间件是一种插入到管道上进行处理请求和响应的软件;每个中间件组件具有下面的功能: 请求委托(request delegate)是用于建立(build)请求管道的,请求委托可以处理每个Http的请求; 请求委托被配置的方法有三种:Run、Map、Use 扩展方法; 用 IApplicationBuil
阅读全文
摘要:中间件是被用到管道(pipeline)上来处理请求(request)和响应的(response)。 asp.net core 本身提供了一些内置的中间件,但是有一些场景,你可能会需要写一些自定义的中间件。 1. 创建一个使用匿名委托的中间件组件的形式 注:app.use中return next()会
阅读全文
摘要:本文介绍如何处理多个用户并发更新同一实体(同时)时出现的冲突 。 主要是两种:一种,检查属性并发冲突,使用 [ConcurrencyCheck] ;另一种,检测行的并发冲突,使用 rowversion 跟踪属性,如果在保存之前有修改,就报错 发生并发冲突的情况: 1.用户导航到实体编辑页面; 2.第
阅读全文
摘要:这个教程主要是对于第一次使用dotnet core开发的同学。 运行环境是在centos 7 , 使用了docker容器。 即这是一篇运行在linux的docker容器上的微服务的简单应用。 一. 安装.NET SDK 安装.NET之前,先安装一些依赖,运行下面的命令 安装成功后,再安装.NET S
阅读全文