NETCORE - 技术教程文章

.NetCore中使用Dapper【代码】

Dapper是什么?Dapper是开源的、轻量级,高性能的ORM(对象关系映射)。Dapper的特点:一、轻量:Dapper的GitHub地址:https://github.com/StackExchange/Dapper/tree/main/Dapper,它的核心代码是SqlMapper.cs。代码量不多,编辑后所占空间也比较小。二、高性能:它通过Emit反射IDataReader的序列队列,快速的映射出对象。三、Dapper更倾向于面向SQL,支持多种数据库。 .NetCore中简单封装使用Dapper1、引入Dapper和Dapper.Contri...

.NET Core 实践一:微服务架构的优点(转)【图】

微服务现在已经是各种互联网应用首选的云架构组件,无论是 BAT 还是 滴滴、美团 ,微服务都是重要的一环。相对于微服务,传统应用架构有以下缺点:1. 业务代码混杂,团队成员职责边界不清,团队协作体验不佳,开发效率低下。传统应用架构中,各个业务模块代码都存在于同一个应用当中,各个业务模块之间交互逻辑复杂,代码统统混在一起,难免出现要去别人代码里改代码的情况2. 代码耦合度高,日趋臃肿,难以重构,维护成本越来越高。...

.Net Core 3.0 内置依赖注入:举例【图】

原文:.Net Core 3.0 内置依赖注入:举例版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_42829302/article/details/103069603本文根据蔚来汽车.Net 开发部 罗霄老师的分享 进行整理,在这里声明,表示感谢。 本文讲解如何使用.Net Core 3.0的内置依赖(Microsoft.Extensions.DependencyInjection),而不是使用第三方的依赖...

net core 使用 Redis【代码】

1、安装,下载地址:https://github.com/MicrosoftArchive/redis/releases2、启动,  默认目录:C:\Program Files\Redis\  服务程序:redis-server.exe3、远程连接、密码设置  注释掉redis.windows-service.conf 中的bind 127.0.0.1这一行(在前面加#)  同文件中将protected-mode yes 改成 protected-mode no  找到# requirepass foobared行,去掉#号,改为requirepass 123456,即将密码改为123456。  保存并重启redi...

asp.net core 如何在Docker停止时,代码注销Consul中的服务【代码】

使用ENTRYPOINT,而不是CMD,至于这俩命令有啥区别,百度下吧。ENTRYPOINT ["dotnet", "LS.Saas.BaseInfo.HttpApi.Host.dll"]Startup.cs中的Configure方法注入:IApplicationLifetime lifeTime,它的ApplicationStopping就可以捕获到停止状态,不管是控制台停止,还是docker停止。//注销服务 lifeTime.ApplicationStopping.Register(() => {client.Agent.ServiceDeregister(serviceId).GetAwaiter().GetResult(); });1.docker stop...

使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)【代码】【图】

对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战。在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你创建良好的文档和帮助页面。 Swashbuckle 可以通过修改 Startup.cs 作为一组 NuGet 包方便的加入项目。Swashbuckle 是一个开源项目,为使用 ASP.NET Core MVC 构建的 Web APIs 生成 Swagger 文档。Swagger 是一个机器可读的 RESTful API 表现层,它可以支持交互式文档...

.net core web api部署到docker【图】

一、创建.net core web api 的Demo修改部分代码 注意下图,这里的ip地址是虚拟机中docker的ip地址,端口随意自己写如果不清楚在哪里 ,可在linux系统下执行 ip addr 即可,看下图,docker中你可分配的ip从172.17.0.1到172.17.255.255,我这里由于前两个ip已经在使用中了,所以用了172.17.0.4 下一步是Dockerfile文件,如果发现你的项目中没有此文件,很简单,右键项目=》添加=》Docker支持即可,然后修改文件如下图 然后发布项目并...

向net core 3.0进击——Swagger的改变【代码】【图】

原文:向net core 3.0进击——Swagger的改变目录前言引入测试小结前言十一小长假在不知不觉间可都没了,在这个小尾巴的空隙,把这两天鼓捣的net core 3.0升级过程记录一下,首先还是根据之前的顺序一个个补充进来,先从Swagger的变化说起(新建工程什么的不多说了,就是选择的时候选3.0就可以了,2019新版更新后创建默认都是3.0)。引入按之前的习惯,对于引入我是不会多说,一个链接(我自己之前引入那些截图)就给大家了,但是因为...

ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了【代码】【图】

引言在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者的心情。或者详细点,或者简单点。那么有没有一种快速有效的方法来构建api说明文档呢?答案是肯定的, Swagger就是最受欢迎的REST APIs文档生成工具之一!为什么使用Swagger作为REST APIs文档生成工具Swagger 可以生成一个具有互动性的API...

.NET Core系列 : 2 、project.json 这葫芦里卖的什么药【代码】

.NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门 介绍了.NET Core环境,本文介绍.NET Core中最重要的一个配置文件project.json的相关内容。我们可以使用.NET Core 的dotnet 命令行接口(CLI)dotnet new命令创建一个应用,也可以用Visual Studio 2015 update 3创建一个应用,他们都有一个project.json ,它是项目的配置文件,类似之前的*.csrpoj文件。Project.json 是一个新的项目文件,它的功能大部分与 *.*PROJ 文件重叠...

ASP.NET Core 整合Autofac和Castle实现自动AOP拦截【代码】

原文:ASP.NET Core 整合Autofac和Castle实现自动AOP拦截前言:除了ASP.NETCore自带的IOC容器外,我们还可以使用其他成熟的DI框架,如Autofac,StructureMap等(笔者只用过Unity,Ninject和Castle)。1.ASP.NET Core中的Autofac首先在Project.json的Dependency节点为中添加如下引用: "Microsoft.Extensions.DependencyInjection": "1.0.0","Autofac": "4.1.1","Autofac.Extensions.DependencyInjection": "4.0.0",接着我们也修改St...

基于Electron+.NET Core的前后端分离的跨平台桌面应用【代码】

Web做界面比原生桌面界面开发速度真心要快很多,而且组件也多。分析:1、.NET Core和Electron都是跨平台的。2、NET Core做后端很方便,但是没有GUI,Electron做桌面应用很方便,但是存在Node.js单线程跑CPU密集计算的弱点。 灵感:那Electron启动后,调用NET Core程序运行在后台,作为本地后端,CPU密集计算直接扔给后端跑不就得了?甚至于说,能不能Electron只负责展示层,NET Core负责所有的业务逻辑? 已知:NET Core通过VS带的...

基于 ASP.NET Core 2.0 WebAPI 后台框架搭建(2) - EF Core (MySQL) CodeFirst 数据库迁移与依赖注入【代码】【图】

概述  上一章,我们简单的搭建了依赖注入的三层架构,但是,没有真正的使用,而我们现在就使用MySQL数据,基于 EF Core 的 DbFirst 进行框架搭建。微软爸爸官方文档:使用新数据库在 ASP.NET Core 上开始使用 EF Core 数据库表字段命名规范   步骤  1. 右击 Entity 项目,点击“管理NuGet程序包”   2. 安装以下三个包Microsoft.EntityFrameworkCore 安装版本:2.1.0Microsoft.EntityFrameworkCore.Tools 安装...

Asp.Netcore使用Filter来实现接口的全局异常拦截,以及前置拦截和后置拦截

原文链接:https://blog.csdn.net/qq_38762313/article/details/85234594 全局异常拦截器: 解决写每个接口都需要去做容错而添加try{}catch{},有了该异常拦截器后,所有接口都不需要去添加异常处理。实现方式: 第一步:新建一个类继承 IExceptionFilter,添加 using Microsoft.AspNetCore.Mvc.Filters;该类的名称命名要求是:后缀必须ExceptionFilter,例如:GlobalExceptionFilter。该类必须实现OnException 这个方...

.net core控制台应用程序初识【代码】【图】

1、创建控制台应用(.NET Core) 2、生成 .dll 文件 .net core控制台应用程序与之前.net版本有所不同,编译之后不会生成.exe启动程序,而是生成.dll文件所以在使用的时候需要敲入命令来启动控制台应用程序,命令是:start dotnet c:\xxxx.dll通过命令会启动控制台程序 3、将该源文件编译出 .exe 文件1、首先回到 Program.cs 文件所在路径2、在该路径下执行命令即可生成对应的 exe 文件 $ dotnet build -r win-x64 或 $ dotnet...

ASP.NET Core 2.2 基础知识(八) 主机 (未完待续)【代码】

主机负责应用程序启动和生存期管理.共有两个主机 API :1.Web 主机 : 适用于托管 Web 应用,基于 IWebHostBuilder ;2.通用主机 : 适用于托管非 Web 应用. 基于 HostBuilder .官方:通用主机的目标是将 HTTP 管道从 Web 主机 API 中分离出来,从而启用更多的主机方案。 基于通用主机的消息、后台任务和其他非 HTTP 工作负载可从横切功能(如配置、依赖关系注入 [DI] 和日志记录)中受益通用主机是 ASP.NET Core 2.1 中的新增功能,不适...

.NET Core如何进行请求转发?【代码】【图】

前言冒个泡,近日,有关注我公众号的小伙伴私信我,遇到一个问题搞了很久没解决,此问题具有参考意义,这里跟大家分享下,希望对后续可能有需要的你能有所参考和帮助。请求转发问题内网环境跟外网隔离,现在外网的请求都需要一个专用服务器转接到内网处理,用app.UseRewriter转接, 从外网服务器转发到内网服务器的时候Header 里面的Authorization 居然丢失了,重新设置RewriteContext.HttpContex Header也不行,有没有办法解决?当...

.netcore 获取项目相关路径

public class BorrowDataController : Controller { private readonly IHostingEnvironment _hostingEnvironment; public BorrowDataController(IHostingEnvironment hostingEnvironment) { _hostingEnvironment = hostingEnvironment; } [HttpGet] public IActionResult test() { var path = Directory.GetCurrentDirectory();//获取当前的项目文件所...

asp.net core +quartz 部署IIS上问题

IIS一般默认 应用程序池有设置固定时间间隔(分钟) 默认1740,以及闲置超时(分钟) 默认20;如果我们 asp.net core+quartz.net 部署在IIS上执行长期定时任务时,需要将上来两项内容设置成0,(不回收);不然我们的定时任务会在IIS做回收时清理掉我们的定时任务。导致任务停止;如果可以做定期检测也是一种方式,本人比较偷懒,就不做回收。但是否会造成其他问题,需要观察 原文:https://www.cnblogs.com/yqf0317/p/13264392.ht...

docker结合jenkins、gitlab实现.netcore的持续集成实践【代码】【图】

本文的目标是实现下图基于ASP NET Core的实践运行环境Cent OS 7vs code.net corecmder运行docker,设置docker镜像加速器,不然国内下载image会很慢。要学习docker入门的,可以参考docker 入门与实战创建一个docker network,让容器之间可以互相访问$ sudo docker network create -d bridge docker-net -d 参数指示Docker 网络类型docker 运行jenkins$ sudo docker run -p 8080:8080 -p 50000:50000--name jenkins--network docker...

windows 下部署 .netcore 到 windows service【图】

接上一篇 《windows 下部署 .netcore 到 iis 》,这一篇记录一下怎么将 Asp.Net Core 以 windows 服务的方式部署。  一、修改代码  其实也很简单,只要调用一个 HostBuilder.UseWindowsService 就可以了,.Net Core 3.1 版本需要引用 Microsoft.Extensions.Hosting.WindowsServices 包。具体参看官方说明:https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/windows-service?view=aspnetcore-3.1&tabs=visual-st...

aspnet core 全局模型验证,统一api响应【代码】【图】

上手就来 新建一个模型验证过滤器,其中ApiResp是自定义的统一响应类。publicclass VldFilter:IActionFilter{///<summary>/// 执行到action时///</summary>///<param name="context"></param>publicvoid OnActionExecuting(ActionExecutingContext context){if (!context.ModelState.IsValid){ApiResp result = new ApiResp(ApiRespCode.F400000){};StringBuilder errTxt = new StringBuilder();foreach (var item in conte...

将终结点图添加到你的ASP.NET Core应用程序中【代码】【图】

在本文中,我将展示如何使用DfaGraphWriter服务在ASP.NET Core 3.0应用程序中可视化你的终结点路由。上面文章我向您演示了如何生成一个有向图(如我上篇文章中所示),可以使用GraphVizOnline将其可视化。最后,我描述了应用程序生命周期中可以检索图形数据的点。作者:依乐祝原文地址:https://www.cnblogs.com/yilezhu/p/13335749.html译文地址:https://andrewlock.net/adding-an-endpoint-graph-to-your-aspnetcore-applicatio...

在Asp.Net Core中集成Kafka(中)【代码】【图】

在上一篇中我们主要介绍如何在Asp.Net Core中同步Kafka消息,通过上一篇的操作我们发现上面一篇中介绍的只能够进行简单的首发kafka消息并不能够消息重发、重复消费、乐观锁冲突等问题,这些问题在实际的生产环境中是非常要命的,如果在消息的消费方没有做好必须的幂等性操作,那么消费者重复消费的问题会比较严重的,另外对于消息的生产者来说,记录日志的方式也不是足够友好,很多时候在后台监控程序中我们需要知道记录更多的关于...

ASP.NET Core 2.2 基础知识(十七) SignalR 一个极其简陋的聊天室【代码】【图】

原文:ASP.NET Core 2.2 基础知识(十七) SignalR 一个极其简陋的聊天室这是一个极其简陋的聊天室!这个例子只是在官方的例子上加了 Group 的用法而已,主要是官方给的 Group 的例子就两行代码,看不出效果.第一步:修改 chat.js"use strict";//创建一个连接var connection = new signalR.HubConnectionBuilder().withUrl("/chatHub").build();//定义客户端的 ReceiveMessage 方法 connection.on("ReceiveMessage", function (user, mess...

ASP.NET Core Web Api之JWT VS Session VS Cookie(二)【代码】【图】

前言本文我们来探讨下JWT VS Session的问题,这个问题本没有过多的去思考,看到评论讨论太激烈,就花了一点时间去研究和总结,顺便说一句,这就是写博客的好处,一篇博客写出有的可能是经验积累,有的可能是学习分享,但都逃不过看到文章的你有更多或更好的想法,往返交流自身能收获更多,何乐而不为呢?希望本文能解惑或者能得到更多的交流。我们可直接抛出问题:使用客户端存储的JWT比服务端维持Session更好吗? 基于JWT和Sessio...

aspnetcore 应用 接入Keycloak快速上手指南【代码】【图】

登录及身份认证是现代web应用最基本的功能之一,对于企业内部的系统,多个系统往往希望有一套SSO服务对企业用户的登录及身份认证进行统一的管理,提升用户同时使用多个系统的体验,Keycloak正是为此种场景而生。本文将简明的介绍Keycloak的安装、使用,并给出aspnetcore 应用如何快速接入Keycloak的示例。Keycloak是什么Keycloak是一种面向现代应用和服务的开源IAM(身份识别与访问管理)解决方案Keycloak提供了单点登录(SSO)功能...

.net core 连接数据库 进行增删查改操作【图】

安装程序包 appsettings配置数据库连接串 生成数据库上下文: 在程序包管理控制台输入: Scaffold-DbContext "数据库连接串" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models 这个时候会生成一个Models文件夹里面包含着XXXContext.cs文件和数据库里面所有表的实体类 配置ConfigureServices Controllers查询数据 运行项目 数据成功获取,相信增删改也没毛病了 原文:https://www.cnblogs.com/nwdnote/p...

4.2WebHost配置和启动「深入浅出ASP.NET Core系列」【图】

希望给你3-5分钟的碎片化学习,可能是坐地铁、等公交,积少成多,水滴石穿,谢谢关注。WebHost配置覆盖配置文件和修改启动URL 覆盖配置文件和修改启动URL是经常使用的地方,覆盖配置文件可以自定义自己的配置信息,或者同时支持多个配置文件并存,对配置内容过多的情况可以起到一个分类的目的,非常的好用。同样UseUrs也可以同时支持多个访问地址和端口,灵活性,实用性兼备。 IHostingEnvironment 这是整个宿主环境类,可以通过该...

翻译一篇英文文章,主要是给自己看的——在ASP.NET Core Web Api中如何刷新token【代码】【图】

原文地址 :https://www.blinkingcaret.com/2018/05/30/refresh-tokens-in-asp-net-core-web-api/先申明,本人英语太菜,每次看都要用翻译软件对着看,太痛苦了,所以才翻译的这篇博客,英语好的自己去看,以下为正文 当使用访问令牌来保护web api时,首先想到的是令牌过期时该怎么办?您是否再次要求用户提供凭证?这并不是一个好的选择。这篇博客文章是关于使用refresh令牌来解决这个问题的。特别是在 ASP.NET Core Web Apis 中使用...