NETCORE - 技术教程文章
用 Jenkins + .netcore 2.0 构建
上一篇是关于 .net framework 框架的, 今天是关于 .netcore 2.0 的这里为大家分享 配置中踩到的坑 cd %WORKSPACE%\"需要还原的项目目录"dotnet restore --configfile NuGet.Config 这句是关键, vs2017 会默认读取该文件,,但是 命令必须指定!!!dotnet build --framework netcoreapp2.0 --configuration Release --output bin\Releasedotnet publish --configuration Release --output "输出目录" 原文:https://www.cnblogs.com/...
NETCore项目报错 An error occurred while starting the application【代码】
部署项目到IIS,运行时报错误: An error occurred while starting the application 打开web.config找到stdoutLogEnabled="false",把该值改为true,即->stdoutLogEnabled="true"<?xml version="1.0" encoding="utf-8"?><configuration><location path="." inheritInChildApplications="false"><system.webServer><handlers><add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified"/><...
[译]使用DOT语言和GraphvizOnline来可视化你的ASP.NETCore3.0终结点01【代码】【图】
这是系列文章中的第一篇:使用GraphvizOnline可视化ASP.NETCore3.0终结点。.第1部分-使用DOT语言来可视化你的ASP.NETCore3.0终结点(本文)第2部分-向ASP.NET Core应用程序添加终结点图第3部分-使用ImpromptuInterface创建一个自定义的DfaGraphWriter,以便于反射作者:依乐祝 原文:https://andrewlock.net/visualizing-asp-net-core-endpoints-using-graphvizonline-and-the-dot-language/ 译文:https://www.cnblogs.com/yilezhu/...
NETCore JSON字符串快速转换为类文件【代码】【图】
1.复制 JSON对象字符串{"Name": "Robot","Sex": "Man","Describe": "aaa - JsConfig","Message": "Hello World - JsConfig - 啊!" }2.在 cs后缀类文件 中,点击 编辑/选择性粘贴/将JSON粘贴为类 【如果不行可能是vs版本问题】 原文:https://www.cnblogs.com/Cailf/p/13125627.html
NetCore项目实战篇02---全局异常处理【代码】【图】
在 .netcore中可以自定义自己的异常类型,步骤如下:1、自定义自己的异常类型UserOperationException 并继承自Exceptionpublicclass UserOperationException:Exception{public UserOperationException() { }public UserOperationException(string message) : base(message) { }public UserOperationException(string message, Exception innerException) : base(message, innerException) { }}2、自定义自己的全局异常过滤器Global...
.NetCore,Asp.netCore 程序集注入Autofac【代码】【图】
概述? .NetCore 或者 Asp.netCore 内置DI框架的特点:? 1.不支持程序集注册:每增加一个服务,则需要一行代码进行注册。? 2.不支持属性注入:内置DI只支持构造函数注入,不支持属性注入(当然,构造函数注入为主流)。? 第三方DI框架Aufofac,很好的解决了上面的两个问题。当然,内置的DI,是使用第三方DI的基础,即第三方DI,是离不开内置DI的。一、.NetCore 使用 AutoFac第一步:添加Autofac从nuget 添加的程序集中可以看出,不...
.netcore3.1 添加AutoMapper自动映射【代码】【图】
在Nuget包管理中,搜索AutoMapper,添加引用创建配置属性管理类publicclass AutoMapperProfile : AutoMapper.Profile{public AutoMapperProfile(){//实体字段一致情况 <TSource, TDestination>CreateMap<SelfRequest,entity_self > ();}}在Startup.cs中的Service中注入服务//automapperservices.AddAutoMapper(c=>c.AddProfile(new AutoMapperProfile()));在controller类中,使用privatereadonly IMapper _mapper;public SelfContr...
netcore的dockerfile编写部分要注意的地方【代码】
这里天研究netcore3.1部署在docker中,期间遇见了很多坑,下面大概讲一下安装过程1.vs添加一个docker支持会生成一个dockerfile文件,但是那里面的代码很多如果你用打包到文件夹的方式的话我觉得是不需要的,所以对dockerfile文件修改如下:#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/core/aspnet:3....
ASP.NET Core 源码阅读笔记(3) ---Microsoft.AspNetCore.Hosting【代码】
有关Hosting的基础知识 Hosting是一个非常重要,但又很难翻译成中文的概念。翻译成:寄宿,大概能勉强地传达它的意思。我们知道,有一些病毒离开了活体之后就会死亡,我们把那些活体称为病毒的宿主。把这种概念应用到托管程序上来,CLR不能单独存在,它必须依赖于某一个进程,我们把这种状况称之为:CLR必须寄宿于某一个进程中,而那个进程就是宿主。 ASP.NET Core的一个大的改变就是就是将Web应用程序改成了自寄宿(当然在W...
ubuntu上的安装.netcore2.1【代码】【图】
.net core 在ubuntu上安装比较容易,依次执行正面语句即可sudo apt-get install curl curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg sudo sh -c ‘echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-artful-prod artful main" > /etc/apt/sources.list.d/dotnetdev.list‘ sudo apt-get ins...
.netcore 3.1高性能微服务架构:为什么要采用.netcore3.1作为微服务技术栈
自动.netcore升级到3.0以后,.net圈子更活跃了,写博客的人也越来越多,很多人开通了公众号写文章;也有技术大牛神乘这波“红利”写书录视频教程等赚钱了。大公司也开始关注.net技术,采用.net作为技术栈的公司大部分都将项目升级到.netcore,以前从.net转Java的人也有部分回来了。总之,.netcore生态空前的变好了。所有.net的程序员们,建议直接学习.netcore新技术,不要在呆在.netframework技术里泥潭了。作为.net开发的老人,我...
在Ubuntu 18.04中安装.NetCore 3.1运行环境【代码】
权威的资料是微软官方的文档:在Ubuntu上安装.NET SDK或.NET运行时。1、准备工作(1) 添加Microsoft包签名密钥将Microsoft包签名密钥添加到受信任密钥列表,并添加包存储库。> wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb > sudo dpkg -i packages-microsoft-prod.deb(2) unable to resolve host address错误执行上面命令,会出现unable to resolve host...
.NetCore 简单的使用中间件
//定义中间件 app.Use(next => { return new RequestDelegate(async c => { await c.Response.WriteAsync("start-88888888888"); await next.Invoke(c); await c.Response.WriteAsync("end-88888888888"); }); }); 中间件我们通常是把上面的方法给提出来并放在一个class类里面,并进一步使用扩展方...
AspNetCore微服务下的网关-Kong(一)【代码】【图】
Kong是Mashape开源的高性能高可用API网关和API服务管理层。它基于OpenResty,进行API管理,并提供了插件实现API的AOP。Kong在Mashape 管理了超过15,000 个API,为200,000开发者提供了每月数十亿的请求支持。本文将从架构、API管理、插件三个层面介绍Kong。架构按照康威定律,我们系统架构会拆的很散,系统由一堆服务组成,如下图所示: 库存服务、优惠券服务、价格服务时之前都会做一些特殊处理,如限流、黑白名单,日志、请求统计...
MSB3027 无法将“xxx\netcoreapp3.0\xxx.exe”复制到“xxx\netcoreapp3.0\xxx.exe”。超出了重试计数 10。失败。文件被“xxx (6424)”锁定。
问题描述:MSB3027 无法将“xxx\netcoreapp3.0\xxx.exe”复制到“xxx\netcoreapp3.0\xxx.exe”。超出了重试计数 10。失败。文件被“xxx (6424)”锁定。MSB3021 无法将文件“xxx\netcoreapp3.0\xxx.exe”复制到“xxx\netcoreapp3.0\xxx.exe”。文件“xxx\netcoreapp3.0\xxx.exe”正由另一进程使用,因此该进程无法访问此文件 推断原因:在运行xxx.exe时,还未运行起来,关掉了该运行,又点击了一次运行 解决办法:没有在任务管理器中...
.NetCore 下使用多个DbContext【代码】
一个项目中使用多个DbContext 或者种数据库的多个DbContext 业务需要单个DbContext使用不需要给出说明1、dotnet ef migrations add migrationname2、dotnet ef database update多个DbContext请使用如下命令指定dbcontext名称或者指定生成到目录1、 添加为dbcontextname 添加 migrations 到 pathdir目录下面,这里需要注意的是应用程序集目录问题 _migrationAssablyName,会决定生成migraions文件夹位置 dotnet ef migrations add m...
LindDotNetCore~Aspect面向方面编程【代码】
回到目录Aspect面向方面编程面向侧面的程序设计(aspect-oriented programming,AOP,又译作面向方面的程序设计、观点导向编程、剖面导向程序设计)是计算机科学中的一个术语,指一种程序设计范型。该范型以一种称为侧面(aspect,又译作方面)的语言构造为基础,侧面是一种新的模块化机制,用来描述分散在对象、类或函数中的横切关注点(crosscutting concern)。 侧面的概念源于对面向对象的程序设计的改进,但并不只限于此,它还...
iris(go)和.netcore的web速度测试和对比【代码】
近期在开发一个抢口罩的系统,类似于电商常见的秒杀系统。当时选型的的时候准备在netcore和golang之间选择一个作为系统的开发语言,网上的说法各异,有的说iris快,有的说.netcore快。于是决定自己做下测试。 iris在go的web开发框架中是非常流行的,它自己的介绍是最快的go语言web框架,这个肯定有一家之言的成分,但是说它是最快的go框架之一肯定没有问题。使用的iris的版本是12.1.8aspnetcore 就是微软在.netcore中开发的标准框架...
【aspnetcore】在filter中使用DI【代码】
学习和使用aspnetcore,必定绕不开注入,不得不说,这对我这种一直使用webform并且上了年纪的码农来说,真心的不轻松。这不,又遇到问题了:一个企业微信的项目,用户和部门信息使用redis存储,项目中引入IDistributedCache来获取redis中的数据,startup.cs 中注册redis缓存,NuGet中引入Microsoft.Extensions.Caching.Redisservices.AddDistributedRedisCache((options) => {options.Configuration = "127.0.0.1:6379"; });使用方...
LindDotNetCore~基于模块化注入的介绍【代码】
LindDotNetCore相关介绍相关模块全局都是依赖DI消息队列NoSqlCaching仓储服务总线Solr调度日志Asspect拦截组件UAA授权各种组件环境的搭建各模块单元测试编写DI统一战线LindDotNet框架同样采用了全局DI注入的方式来使用模块对象的,这种松耦合的设计对于单元测试 是很方便人。services.AddLog4Logger(o => { o.Log4ConfigFileName = "log4.config"; o.ProjectName = "test"; }); services.UseDapper(o => { o.ConnString = $"Data S...
.NetCore集成Dapr踩坑经历【代码】【图】
该篇内容由个人博客点击跳转同步更新!转载请注明出处前言之前自己有个core2.2的项目一直是用的Surging作为微服务框架的,后来了解到了Dapr,发现比较轻量级,开发部署等也非常方便,故将自己的程序升级到了3.0同时框架改成了Dapr,网上查到的好多Dapr文章基本都是大差不同,大都是用的GIT上的示例或者是直接文章翻译很少有提到实战上的一些问题,下面我把我自己遇到的一些问题和解决方法记录一下同时大致讲下安装集成步骤。前期准...
【.netcore学习】.netcore添加到 supervisor 守护进程自启动报错【代码】
配置 supervisor[program:HelloWebApp] command=dotnet run directory=/home/python/dotnet/myweb/mywebapi environment=ASPNETCORE__ENVIRONMENT=Production user=root stopsignal=INT autostart=true autorestart=true startsecs=1 stderr_logfile=/var/log/HelloWebApp.err.log stdout_logfile=/var/log/HelloWebApp.out.log 启动 supervisor 的时候 报错log如下:python@ubuntu:~/dotnet/myweb/mywebapi$ sudo servi...
asp.net core2 mvc 基础教程--继续讲 Tag Helpers 和复习 View Component【代码】
条件 Tag HelpersConditionTagHelper:[HtmlTargetElement(Attributes = nameof(Condition))] publicclass ConditionTagHelper : TagHelper {publicbool Condition { get; set; }publicoverridevoid Process(TagHelperContext context,TagHelperOutput output){if (!Condition) output.SuppressOutput();} } 使用 ConditionTagHelper:<li class="nav-item" condition="SignInManager.IsSignedIn(User)"><a class="nav-link text-d...
ASP.NET CORE系列【四】基于Claim登录授权【代码】【图】
原文:ASP.NET CORE系列【四】基于Claim登录授权介绍 关于什么是Claim? 可以看看其他大神的文章: http://www.cnblogs.com/jesse2013/p/aspnet-identity-claims-based-authentication-and-owin.html http://www.cnblogs.com/savorboard/p/aspnetcore-identity.html 注:本人目前还是菜鸟初学阶段,如有写错的地方,望各位大鸟 指出!场景用户登录是一个非常常见的应用场景 .net core的登录方式跟以往有些不同,可以说是往好的方...
linux+asp.net core+nginx四层负载均衡【代码】【图】
Linux Disibutaion:Ubuntu 16.04.1 LTSWeb Server:Nginx、Kestrel关于如何在linux中部署asp.net core我这里不再详细介绍,可以参考ASP.Net Core 运行在Linux(Ubuntu) 这里我需要三台VM:nginxvm01:做负载均衡服务器nginxvm02:服务节点1nginxvm03:服务节点2 大致服务架构如下图:配置负载均衡节点(nginxvm01):sudo apt-get install -y nginx sudo touch /etc/nginx/sites-available/nginxlb-proxy sudo vi /etc/nginx/sites-ava...
NET Core,你必须了解无处不在的“依赖注入”【代码】【图】
NET Core,你必须了解无处不在的“依赖注入”ASP.NET Core的核心是通过一个Server和若干注册的Middleware构成的管道,不论是管道自身的构建,还是Server和Middleware自身的实现,以及构建在这个管道的应用,都需要相应的服务提供支持,ASP.NET Core自身提供了一个DI容器来实现针对服务的注册和消费。换句话说,不只是ASP.NET Core底层框架使用的服务是由这个DI容器来注册和提供,应用级别的服务的注册和提供也需要以来这个DI容器,...
【译】ASP.NET Core在 .NET Core 3.1 Preview 1中的更新【代码】【图】
.NET Core 3.1 Preview 1现在可用。此版本主要侧重于错误修复,但同时也包含一些新功能。 这是此版本的ASP.NET Core的新增功能:对Razor components的部分类支持将参数传递给顶级组件在HttpSysServer中支持共享队列在SameSite cookies的重大更改除了.NET Core 3.1 Preview版本发布之外,我们还发布了Blazor WebAssembly的更新,现在要求.NET Core 3.1. 若要使用Blazor WebAssembly,您需要安装.NET Core 3.1 Preview 1以及Visual S...
卸载.net 5.0后使用dotnet提示Found .NET Core SDK【图】
之前安装了预览版本的vs2019后试了下,然后卸载了。但发现控制台执行dotnet相关命令提示Found .NET Core SDK, but did not find dotnet.dll at [C:\Program Files\dotnet\sdk\5.0.100-rc.1.20452.10\dotnet.dll]于是定位到C:\Program Files\dotnet\sdk路径中删除5.0目录即可这样就可以了之后重新打开控制台输入dotnet --info没问题了原文:https://www.cnblogs.com/tchivs/p/13800903.html
ASP.NET Core的Kestrel服务器【代码】【图】
原文:ASP.NET Core的Kestrel服务器原文地址----Kestrel server for ASP.NET CoreBy Tom Dykstra, Chris Ross, and Stephen HalterKestrel是一个基于libuv的跨平台ASP.NET Core web服务器,libuv是一个跨平台的异步I/O库。ASP.NET Core模板项目使用Kestrel作为默认的web服务器。Kestrel支持以下功能:HTTPS用于启用不透明升级的WebSockets位于Nginx之后的高性能Unix socketsKestrel 被.NET Core支持的所有平台和版本所支持查看或下载...
asp.net core api网关 实时性能监控【代码】
asp.net core api网关 实时性能监控使用InfluxDB、GrafanaDockerfile 运行 InfluxDB、Grafanainfluxdb: image: influxdbports:- "8086:8086"- "8083:8083"environment:- INFLUXDB_DB=TogetherAppMetricsDB- INFLUXDB_ADMIN_ENABLED=true- INFLUXDB_ADMIN_USER=admin- INFLUXDB_ADMIN_PASSWORD=admin grafana:image: grafana/grafanaports:- "3000:3000"配置 Grafana浏览器打开 <本地ip>:3000,使用默认账号登录添加数据源 在Config...