API升级,新旧版本的API共存,怎么管理呢?   一.前言 最近,单位APP做了升级,同步的,API也做了升级. 升级过程中,出现了一点问题:API升级后,旧API也需要保留,因为有旧的APP还在使用中. 那么,API端如何作到多个版本共存呢?     为防止非授权转发,这儿给出本文的原文链接:https://www.cnblogs.com/tiger-wang/p/14167625.html 二.快速的解决办法 API的露出,是在API的Route定义中实现的.看下面的例子: [Route(…
现在微软有一个开源项目 CoreRT 能通过将托管的 .NET Core 编译为单个无依赖的 Native 程序 这个项目现在还没发布,但是能尝试使用,可以带来很多的性能提升 使用 CoreRT 发布的优点: 只有一个 exe 文件,是绿色没有依赖 发布的文件的大小很小,对比 dotnet core 的独立发布 50M 的大小会小很多 能在大多数的系统运行 提高很多启动性能 不足是软件不是非常稳定,同时只能支持x64的程序 使用这个项目是比较难的,本文下面提供的包的版本,请大家按照我的安装的版本…
今天开始学习dotnet core的开发,距离Visual Stuio 2017正式版的发布,也就是VS20周岁的生日还有三天,在我的电脑上安装的是VS2017 Enterprise RC版, 在VS2017RC版本中dotnet core的版本是1.1版本,很快随着VS正式版的发布,2.0也随之上线了,dotnet core 1.1版本和之前的1.0版本呢,很大的区别就在于,project.json文件的变化,在1.1版本上,是把project.json合并到了.csproj和MSBuild文…
作者:陈希章 发表于 2017年12月19日 引子 这一篇文章将用一个完整的实例,给大家介绍如何基于dotnet core(微软.NET的最新版本,支持跨平台,跨设备的应用开发,详情请参考 https://www.microsoft.com/net 开发一个Web API Service,并且利用Azure的PaaS服务来实现部署,以及持续的开发运营(devops). 这篇文章的难度不高,但会作为一个操作指南,后续很多文章,如果涉及到这块基础工作,都会引用这篇文章.本文所演示的范例代码,可以通过…
简介 是dotNet core下基于Beetlex实现的一个高度精简化和高吞吐的HTTP API服务开源组件,它并没有完全实现HTTP SERVER的所有功能,而是只实现了在APP和WEB中提供数据服务最常用两个指令GET/SET,满足在应用实现JSON,PROTOBUF和MSGPACK等基于HTTP的数据交互功能,虽然是一个精简版本但针对SSL这方面的安全性还是支持.有牺牲就必然有收获,FastHttpApi作出这么大的精简必然在性能上有所收获取,经测试FastHttpApi在GET/POST…
安装 Ubuntu        dotnet core 跨平台已不再是梦,它带来的意义非凡,比如api接口可以在linux上编写及部署,也可以在windows上编写好,打包发布,然后copy到linux上部署.从官网下载最新版本, 然后装到虚拟机VMware中.如果是centeros,系统开启后,默认进入命令行模式,估计一部分同学,看到类似dos界面,有点恐慌,不急,在命令行中输入startx回车,进入到图形界面.无论是哪种系统,虚拟机上装的操作系统,在开机启动后,都有可能窗口不能自适应,也就…
使用 dotnet core 和 Azure PaaS服务进行devOps开发(Web API 实例) 作者:陈希章 发表于 2017年12月19日 引子 这一篇文章将用一个完整的实例,给大家介绍如何基于dotnet core(微软.NET的最新版本,支持跨平台,跨设备的应用开发,详情请参考 https://www.microsoft.com/net 开发一个Web API Service,并且利用Azure的PaaS服务来实现部署,以及持续的开发运营(devops). 这篇文章的难度不高,但会…
公开API的安全,其实更重要.   一.API的安全 作为一个Dotnet Core的老司机,写API时,能兼顾到API的安全,这是一种优雅.   通常,我们会用认证来保证API的安全,无敌的Authorize能解决我们很多的问题. 但是,总有一些场合,我们没办法用Authorize,而只能用匿名或不加验证的方式来访问.比方电商中查询SKU的列表并在前端展示,通常这个无关用户和权限,在完成API的时候,我们也不会加入认证Authorize. 这种情况下,如果直接写,不加入安全级别,这样的体系结构…
前言 国庆假期,一直没有时间更新. 根据群里面的同学的提问,强烈推荐大家先熟悉下spring cloud.文章下面有纯洁大神的spring cloud系列. 上一章最后说了,因为服务是不对外暴露的,所以在外网要访问服务必须通过API网关来完成,而spring cloud 提供了现成的api网关组件zuul.它包含了路由,授权,压力测试等一系列功能. 代码实现 使用intellij idea创建一个spring boot项目,搭建api网关服务.设置端口为5555. pom.xml <depend…
前言 这篇文章拖太久了,因为最近实在太忙了,加上这篇文章也非常长,所以花了不少时间,给大家说句抱歉.好,进入正题.目前的项目基本都是前后端分离了,前端分Web,Ios,Android...,后端也基本是Java,.NET的天下,后端渲染页面的时代已经一去不复返,当然这是时代的进步.前端调用后端服务目前大多数基于JSON的HTTP服务,那么就引入的我们今天的内容.客户端访问服务的时候怎么保证安全呢?很多同学都听说过OAuth2.0,都知道这个是用来做第三方登录的,实际上它也可以用来做Api的认证授…
闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了. 并开始整理IOS的代码(包括当时一开始设计的开发框架). 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及前后端所有涉及的技术系列. 同时还准备发布一个IOS的开发框架,为十二星座再凑一个成员. 闲话结束,下面看正文: CYQ.Data 支持DotNet Coe 的折腾过程: 大约是上周五,在提交CYQ.Data V5.5.8.1版本到Nuget后,看着C盘还有7G发了一会呆. 之后做了一个决定,卸载了…
最近在写的Office add-in开发系列中,其中有一个比较共性的问题就是在add-in的客户端脚本中访问远程服务时,要特别注意跨域访问的问题. 关于CORS的一些基本知识,请参考维基百科的说明:https://en.wikipedia.org/wiki/Cross-origin_resource_sharing 那么,如果我们自己写一个服务,怎么样让他支持CORS呢?我下面用一个例子演示这个过程 1. 使用dotnet new webapi 这个指令创建一个基于dotnet core的项目…
第一次在博客写分享,请多多捧场,如有歧义请多多包含! 因为业务需求发展需要,所以API接口的变更升级是必不可少的事情,而原有的接口是不可能马上停止使用的.例如:Login接口为例,1.0版本之返回用户的基本信息,而2.0版本的迭代下,要把用户祖宗十八代信息都要返回到客户端,这时候1.0 vs 2.0版本的返回信息有一点信息上的差异,如果在不进行版本控制的情况下,在原1.0的版本下优化,那么会出现一个比较严重的问题,如果还有在使用原1.0版本的终端岂不是GG了,所以如何能鱼与熊掌兼得,同时为1.0…
部署dotnet Core Web API 上一步的文章,是我们公司最核心的一个ORM组件,在中标麒麟系统完成了一个插入数据的任务,这一步是将正式的从dot net framework 迁移到 dotnet core 的项目,部署运行在中标麒麟系统中. 项目预览 现有从dotnet framework 迁移过来的一个 dotnet core web api 项目,准备部署中标麒麟系统上测试运行,下面是项目截图: 运行 & 解决 将文件上传到服务器上,然后执行命令运行: [root@gumis02…
Dotnet Core的SDK版本总在升级,怎么使用一个特定的版本呢?   假期过完了,心情还在.今天写个短的. 一.前言 写这个是因为昨天刷微软官方文档,发现global.json在 SDK 3.0 后,更新了一些内容.文档提到了这个更新,但规则说的不太清楚,所以研究了一下,成了这个文章.   先普及一下 .Net Core Runtime 和 .Net Core SDK 的区别,如果请楚,这段可以直接跳过. 我们用命令 % dotnet --list-sdks 查看已安装的Dotnet框架时…
How to remove the .NET Core Runtime and SDK https://docs.microsoft.com/en-us/dotnet/core/versions/remove-runtime-sdk-versions?tabs=windows Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated ve…
用的官方提供的demo,实际上部署后却出现了上图的错误.和技术支持沟通无效后,走上了不归路. 在微软的github dotnet/core开源库提交了issue后,终于获得了解决.附上链接:https://github.com/dotnet/core/issues/3020 有道翻译一下: CspParameters is about directly interacting with the Windows crypto libraries, which are only available…
前言 asp.net core rtm 6月底即将发布,自己也想着为社区做点共享,刚好最近不太忙,看到社区的小伙伴们都在为dotnet core的推广而贡献力量,项目中刚好在用rc2版本,就多写些文章来帮助那些还在学习的朋友们吧. 目录 dotnet core 和 .net的区别 github中dotnet core各个项目的状况 一. dotnet core 和 .net的区别 目前在使用C#开发应用程序的时候,有两种框架可供选择: .Net Framework 和 .Net Core,那他们…
一.     DotNet Core 1.0 开发环境部署 操作系统安装 我们使用CentOS 7.2.1511版本. 安装libunwind库 执行:sudo yum install libunwind libicu libunwind库为基于64位CPU和操作系统的程序提供了基本的堆栈辗转开解功能,32位操作系统不要安装.其中包括用于输出堆栈跟踪的API.用于以编程方式辗转开解堆栈的API以及支持C++异常处理机制的API.. 下载DotNet安装包 执行:curl -sSL -o dotn…
这个教程主要是对于第一次使用dotnet core开发的同学. 运行环境是在centos 7 , 使用了docker容器. 即这是一篇运行在linux的docker容器上的微服务的简单应用. 一. 安装.NET SDK 安装.NET之前,先安装一些依赖,运行下面的命令 sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 安装成功后,再安装.NET SDK sudo yum u…
一.配置环境[Microsoft dotnet Core] 1) Add the dotnet product feed sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 2) Install the .NET SDK sudo yum update sudo yum install dotnet-sdk-2.1 3) Create your project dotnet…
本教程的前提是,你已经在Linux服务器上已经成功的安装了Docker,我会大概介绍在此过程中用到的Docker命令,并不会介绍所有的Docker命令(因为我也不会). 一.在Docker中运行Dotnet Core Hello World 微软官方提供了已经集成好Dotnet Core运行所需环境的Docker Image,我们可以直接使用命令: docker run -it microsoft/dotnet:latest 其中 -i :交互模式 (so we can interact wit…
背景 在上一篇文章安装dotnet core,已经安装好dotnet core了.之前只是安装成功了dotnet, 输入dotnet --info,可以确认安装成功了,但是在运行代码时,还是报错了,本章记录在部署好dotnet core后,到能运行控制台程序当中的错误. 首先将项目用vs发布一下,然后把文件放到中标麒麟的系统上,在文件夹打开终端,执行 dotnet **.dll,结果如下: [root@gumis02 PublishOutput]# dotnet Beyondbit.Consol…
[C#]使用 C# 代码实现拓扑排序   目录 0.参考资料 1.介绍 2.原理 3.实现 4.深度优先搜索实现 回到顶部 0.参考资料 尊重他人的劳动成果,贴上参考的资料地址,本文仅作学习记录之用. https://www.codeproject.com/Articles/869059/Topological-sorting-in-Csharp https://songlee24.github.io/2015/05/07/topological-sorting/ https://www.cnb…
原文:dotnet core 使用 sqlite 部署到 Centos 服务器 本文告诉大家如何创建一个 asp dotnet core 程序,这个程序使用 sqlite 保存,部署程序到 Centos 7 服务器 创建项目 本文是在 Windows 使用 VisualStudio 开发,通过 VisualStudio 可以快速创建一个 asp dotnet core 程序 点击文件,新建一个 ASP.NET Core 程序 这里需要随意给一个项目的名,我这里给了 CataiLerlasur 随…
我们都知道,ORM全称是,Object Relationship Mapper,即,对象关系映射.也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架叫做dapper,而且被称为the king of ORM. 市场上,也有一些其他的ORM,比如EF Core,NHibernate .FreeSQL等等,来处理大数据访问及关系映射.既然官方推出了EF Core,说明其对框架的支持会很友好,为什么又会有那么多的ORM框架供我们使用呢?其实,每一个框架都有其适用的…
Docker制作dotnet core控制台程序镜像 基于dotnet SDK 新建控制台程序 mkdir /home/console cd /home/console dotnet new console dotnet restore 创建 Dockerfile 文件,参考https://github.com/dotnet/dotnet-docker/blob/master/samples/aspnetapp/Dockerfile vim /home/console/Dockerfile #…
dotnet core脚手架批处理.bat @echo 请修改批处理文件名后,如:Example.Core ,注释掉goto end,再执行脚本 pause goto end ::goto end set name=%~n0 mkdir %name%.Model cd %name%.Model dotnet dotnet add package log4net dotnet add package Newtonsoft.Json dotnet add package Dapper dotnet…
本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. VisualStudio 建议去官网下载最新的在线安装,然后安装,安装的时候需要选择通用平台开发.桌面开发.跨平台开发.如果你安装的不是中文版,请看下面图片找到差不多的位置,或者全部打勾. 点击安装,可以去睡觉,明天再看我的博客.因为 VisualStudio 的安装是很慢的,如果发现因为自己的网站无法访问,…
很多时候写出来的网站只能自己内网访问,本文告诉大家如何通过 Frp 将自己的 asp dotnet core 网站发布到外网,让小伙伴访问自己的网站 通过 frp 的方式,可以解决自己的服务器性能太差的问题,通过 frp 的方式需要先存在一个外网的服务器 本文分为三个部分,第一个是创建一个简单的 asp dotnet core 网站,第二是配置域名,第三是配置代理 要使用本文的方法需要以下三个条件 本地有 asp dotnet core 环境 有自己的外网服务器 有自己的域名 搭建本地网站 通过…