1.首先创见Core控制台应用程序  并且引入  AspNetCore.All 首先我们写入配置信息:直接代码如下 //配置信息的根对象 public static IConfigurationRoot Configuration { get; set; } //以键值对的形式拼装将要填添加在JSon配置文件的配置信息 var dic = new Dictionary<string, string> { {"Class", "配置信息"}, {"…
SQL 横转竖 .竖专横 (转载)   普通行列转换 问题:假设有张学生成绩表(tb)如下: 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 李四 物理 94 想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ---- 李四 74 84 94 张三 74 83 93 ------------------- */ create table tb(姓名 varchar(10) , 课程 varchar(10)…
原文:Want to yank configuration values from your .NET Core apps? 作者:pauljwheeler 译文:https://www.cnblogs.com/lwqlun/p/10508748.html 译者:Lamond Lu 示例源代码:https://github.com/lamondlu/LoadConfigurationFromCloud 背景 我们创建的大部分.NET Core应用都会使用配置文件.如果你了解过12 Factor理…
spring将properties文件读取后在配置文件中直接将对象的配置信息填充到bean中的变量里. 原本使用PropertyPlaceholderConfigurer类进行文件信息配置.PropertyPlaceholderConfigurer实现了BeanFactoryPostProcessor接口,能够对<bean/>中的属性值进行外在化管理. <bean id="propertyPlaceholderConfigurer" class="org.s…
一.经常在项目会用到定时任务同步数据或更新缓存等操作,在很久以前我们可能经常会用一个多线程或timer来做定时任务,这样能实现比较简单轻量级的任务:对于任务多且都调用频率不一样的任务,我们都会用到Quartz.Net这个组件: Quartz.NET是一个强大.开源.轻量的作业调度框架,你能够用它来为执行一个作业而创建简单的或复杂的作业调度.它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等 二.  接下来简单演示一下Quartz使用: 2.1  首先新建一个AspNet…
1. 前言 在提倡微服务及 Serverless 越来越普及的当下,在 .Net Core 之前,.Net 应用的配置模式往往依赖于一个名为 web.config 的 XML 文件,耦合性高,而可扩展性和可读性差.当然,我不会怂恿一下子把所有应用迁移到 .Net Core 上,本文将在尽量不引入 .Net Core 开发模式的前提下,获得最大的利益. 在开始之前,我们还是先说说 .Net Core 的配置模式有何优势以及最少的依赖. 1.1 .Net Core 配置模式的优势 支持多种格式,如…
系统: 阿里云的默认 CentOS 7.5 镜像 项目环境:.Net Core 2.2 一.安装.Net Core的运行环境 第一步,如果是一台新的服务器,可以升级一下系统的基础软件.如果没有必要也可以跳过这一步. 执行命令 sudo yum update 第二步,注册Microsoft签名密钥,每个机器只要注册一次就可以 注册命令 sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod…
不管你是使用.net core开发的是web api还是网站类的程序,如果你是部署到IIS,那么下面的内容都适合于你,不会将.net core程序部署到IIS的朋友,可以看看这篇手把手教你部署.net core程序的教程. 将.net core程序部署到IIS总体需要经过以下3个大步骤,其中在IIS上配置网站有些比较繁琐,我都会逐一给出详细步骤. 安装IIS和.net core运行时程序 部署.net core程序首先要确保你服务器上的IIS环境要安装好,不知道怎样在服务器上安装IIS,请先自行…
设计模式(一)单例模式:创建模式 先聊一下关于设计的几个原则(1)单一原则(SRP):一个类应该仅有一个引起它变化的原因 :意思就是 (一个类,最好只负责一件事情,并且只有一个引起它变化的原因(2)开闭原则(OCP): 应该对扩展开放,但是对修改关闭:意思是(模块通过扩展的方式去应对需求的变化,应该尽量在不修改源代码的基础上面扩展)(3)依赖倒置原则(DIP):高层模块不应该依赖低层模块,两者都应该依赖其抽象:抽象不应该依赖细节,细节应该依赖抽象          高层模块不应该直接依赖于底层模…
提到"配置"二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置信息定义在这两个文件之中.到了.NET Core的时候,很多我们习以为常的东西都发生了改变,其中也包括定义配置的方式.总的来说,新的配置系统显得更加轻量级,并且具有更好的扩展性,其最大的特点就是支持多样化的数据源.我们可以采用内存的变量作为配置的数据源,也可以直接配置定义在持久化的文件甚至数据库中. 由…
如果要得到传统的ASP.Net应用程序中的相对路径或虚拟路径对应的服务器物理路径,只需要使用使用Server.MapPath()方法来取得Asp.Net根目录的物理路径,如下所示: // Classic ASP.NET public class HomeController : Controller { public ActionResult Index() { string physicalWebRootPath = Server.MapPath("~/"); return Cont…
概述 Prometheus的主要特点 组件 结构图 适用场景 不适用场景 安装node_exporter,系统性能指数收集(收集系统性能情况) 下载文件 解压并复制node_exporter应用程序到/usr/local/bin 清理下载的文件和解压的文件夹 添加自启动服务 添加服务配置文件 写入配置内容 node_exporter收集性能点的配置 启动服务并配置自启动 prometheus的安装 添加prometheus专用的用户名 添加prometheus的目录 文件夹授权 下载并解压pro…
本节所谓的"配置同步"主要体现在两个方面:其一,如何监控配置源并在其变化的时候自动加载其数据,其目的是让应用中通过Configuration对象承载的配置与配置源的数据同步:其二.当Configuration对象承载的配置放生变换的时候如何向应用程序发送通知,最终让应用程序使用最新的配置. 一.配置与配置源的同步 配置模型提供了三个原生ConfigurationProvider(JsonConfigrationProvider.XmlConfigurationProvider和IniC…
因为访问Nuget太慢,在Dotnet Core RC2发布前,我就基于Asp.Net做了一个Nuget代理网站 这是网站地址:http://nuget.lzzy.net/ Nuget源:http://nuget.lzzy.net/api/v2 广西电信百兆带宽. 这个网站将会缓存所有访问过的API页面与包. API页面缓存的原理,第一次访问会等待服务器从Nuget上下载页面信息 下载后会替换里面的网址并保存到数据库. 第二次访问会从数据库里取出页面兵判断过期时间 如果已过期,先返回页面信息,后…
下面链接 是VS2017 安装EXE 我现在装过了就不去截图演示了,有哪位不理解的可以@我. 链接:https://pan.baidu.com/s/1hsjGuJq 密码:ug59 1.今天我给大家带来的是 创建 AspNet Core控制台 演示将要在Core MVC 中添加的配置信息的读取. 1.1首先创建 AspNet Core控制台程序 1.2 我们在项目中添加Json文件(AspNet Core Web 中去掉了 Config配置文件以Json文件来代替,所以这个梗还是要过一下的 )…
(一)了解微服务(二)搭建VS项目框架  (三)创建AspNet Core Api VS2017 安装包   链接:https://pan.baidu.com/s/1hsjGuJq 密码:ug59 创建 Core Api 下一步 生成 1.Properties:项目的启动配置信息 2.wwwroot :是一个存放项目静态内容的文件夹,存放了诸如css,js,img 3依赖项: 4.Controllers:Api 控制器 5.appsettings.json:项目配置文件 类似于Config 文件…
上一步我们创建好CoreApi 接下来在框架中加入 Swagger  并发布  到 IIS (1)首先点击依赖项>管理Nuget包 (2)输入 Swashbuckle.aspnetCore  比如: 图中两个Swagger 插件需要我们安装   注意:我这里已经安装过显示的是 卸载  (3) 在框架中 添加Swagger 注解的帮助类   HttpHeaderOperation  下面是我完整的.CS文件 using System; using System.Collections.Generi…
(1)  访问Rest ful接口时 Token验证  返回数据格式封装 (一)访问时Token验证  返回数据格式封装 1.1访问Api接口 方法 实现         1.1.1 创建访问Restful Api帮助类 public static string MyGet = "GET"; public static string MyPost = "POST"; public static string MyPut = "PUT"; publ…
首先要明确什么是中间件?微软官方解释:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/middleware/?tabs=aspnetcore2x 也就是中,我们需要在整个应用程序的请求管道中注入某一个中间层来做我们想做的事情.谈谈我的理解:就拿asp.net 的管道模型来说,以往的.net请求管道中我们知道有21个(应该不止)事件来分别处理相应的模块,这是微软为我们设计好的,如果我们需要拓展出来什么,在相应的事件中写入注册就可以…
运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的这篇文章[linux(centos)搭建.net core 运行环境] 准备你的.net core web 程序 我这里新建一个空的.net core web程序用以演示,实际部署时是你的项目 创建web项目(我自己使用vs2017 ,如使用vscode的需要自己安装windows的SDK和使用do…
从头认识一下docker-附带asp.net core程序的docker化部署 简介 在计算机技术日新月异的今天, Docker 在国内发展的如火如荼,特别是在一线互联网公司, Docker 的使用是十分普遍的. 编写此套教程,来带大家去了解并熟练运用 docker ,祝愿各位读者朋友们学完此套教程后,在未来企业面试中能够多一项加分的筹码,能够帮助到大家,我觉得就很值了. docker 是什么 既然说了这么多, docker 到底是个什么东西呢? 我们在理解 docker 之前,首先我们得先区分…
以Windows服务方式运行.NET Core程序 原作者blog:https://www.cnblogs.com/guogangj/p/10093102.html 里面使用了NSSM 工具 但是自己试了下自己公司的产品不行 还有一篇写 aspnet core的 没有代码 暂时还没有测试. 在之前一篇博客<以Windows服务方式运行ASP.NET Core程序>中我讲述了如何把ASP.NET Core程序作为Windows服务运行的方法,而今,我们又遇到了新的问题,那就是:我们的控制台程序,…
上一步我们创建好CoreApi 接下来在框架中加入 Swagger  并发布  到 IIS (1)首先点击依赖项>管理Nuget包 (2)输入 Swashbuckle.aspnetCore  比如: 图中两个Swagger 插件需要我们安装   注意:我这里已经安装过显示的是 卸载  (3) 在框架中 添加Swagger 注解的帮助类   HttpHeaderOperation  下面是我完整的.CS文件 using System; using System.Collections.Generi…
配置,几乎所有的应用程序都离不开它..Net Framework时代我们使用App.config.Web.config,到了.Net Core的时代我们使用appsettings.json,这些我们再熟悉不过了.然而到了容器化.微服务的时代,这些本地文件配置有的时候就不太合适了.当你把本地部署的服务搬到docker上后,你会发现要修改一个配置文件变的非常麻烦.你不得不通过宿主机进入容器内部来修改文件,也许容器内还不带vi等编辑工具,你连看都不能看,改都不能.更别说当你启动多个容器实例来做分布式应…
连表查询都用Left Join吧   最近看同事的代码,SQL连表查询的时候很多时候用的是Inner Join,而我觉得对我们的业务而言,99.9%都应该使用Left Join(还有0.1%我不知道在哪),我用最简单的方式来描述这两者的区别,直接看图(有点草啊): 我的做法是永远把查询主体放在左边,然后右边挨个连上要附加的信息,有则连上,没有则留null,这样思路是最清晰的. Inner Join跟这个的区别是如果附加表找不到对应ID,那么这行记录就不会出现,我在图中用红色字体说明了这个区别.(…
ASPNETCOREAPI 跨域处理 AspNetCoreApi 跨域处理 如果咱们有处理过MV5 跨域问题这个问题也不大. (1)为什么会出现跨域问题:  浏览器安全限制了前端脚本跨站点的访问资源,所以在调用WebApi 接口时不能成功访问资源,原因“同源策略”的存在: 同源指以下几点相同 (1) IP地址/域名 (2) 端口号 (3) 网络协议) 以上三点相同即为同源,浏览器将不做限制. (同源)   WebFrom 前台Ajax调用后台PageLoad页时 因为是在同一站点,以上三点均满足…
最近一个项目中,为App开发后台接口,技术选型为最新 .net core版本,使用.net core开发web api接口过程中,为了方便app团队成员直接在线调用接口,找了公网上的一台服务器做为app后台接口的测试服务器,并做了域名解析.服务器配置为Windows Server 2008 R2企业版,刚购买时,云服务器厂商只是安装了IIS的基本功能.所以接下来咱们基于Windows Server 2008 R2 服务器开始今天的教程. 第一:首先在IIS上安装管理服务,配置好IIS7 允许使用…
物理文件是我们最常用到的原始配置载体,而最佳的配置文件格式主要有三种,它们分别是JSON.XML和INI,对应的配置源类型分别是JsonConfigurationSource.XmlConfigurationSource和IniConfigurationSource,它们具有如下一个相同的基类FileConfigurationSource. 一.FileConfigurationSource FileConfigurationSource总是利用一个IFileProvider对象来读取配置文件,…
上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI.这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD. 实现本次目标我们除了Azure DevOps外还需要: 一台安装了Docker的主机 一个 Docker Hub 账号 上一次我们的CI实现了: 发布>编译>单元测试 这次我们要实现剩下的几个步骤: 生成镜像>推送镜像>部署 创建Docker镜像仓库 我们生成的镜像需要有个存放的地方.各大云厂商其实都有这种…
一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core WebApi项目,使用默认的Values控制器,这里使用Visual Studio 2019创建一个ASP.NET Core 3.1d的WebApi项目. 创建新项目的时候选项ASP.NET Core Web应用程序,如下图所示: 配置新项目界面界面设置项目名称和位置,如下图所示: 选择.Net Cor…