2206月 从ASP.NET Core3.1迁移到5.0的方法 3月中旬,微软官方已经发布了dotnet5的第一个预览版:5.0.0-preview.1。 dotnetcore经过前几个版本的发展和沉淀,到3.1已经基本趋于稳定。 所以从.netcore3.1升级到.net5将非常简单,下面咱们就开始吧: (注:需要VisualStudio201916.6或更高版本) 第一步:在g...…
2206月 VisualStudio2019中为.NET Core WinForm App启用窗体设计器 当我们在使用VisualStudio2019非预览版本开发WindowsFormsApp(.NETCore)应用程序时是不能使用窗体设计器的。即使在窗体文件上右击选择“显示设计器”菜单,仍旧只能看到代码,无法打开窗体设计器。 根据微软开发者博客的描述,我们可以使用VisualStudio2019预览通道,将Visual...…
2206月 IdentityServer4实现.Net Core API接口权限认证(快速入门) 什么是IdentityServer4 官方解释:IdentityServer4是基于ASP.NETCore实现的认证和授权框架,是对OpenIDConnect和OAuth2.0协议的实现。 通俗来讲,就是服务端对需要认证授权的资源(客户端请求资源)在外层使用IdentityServer4框架进行封装加壳,用户只能通过获...…
2206月 在.NET Core中用最原生的方式读取Nacos的配置方法(推荐) 背景 之前老黄写过一篇《ASP.NETCore结合Nacos来完成配置管理和服务发现》简单介绍了如何让.NETCore程序接入Nacos,之前的SDK里面更多的是对Nacos的OpenAPI进行了封装以及对服务注册和发现的封装。 配置这一块当时并没有过多的处理,用起来有时感觉不会特别顺手,所以将它和.NETCore的配...…
2206月 使用.net core3.0 正式版创建Winform程序的方法(图文) 前阵子一直期待.netcore3.0正式版本的出来,以为这个版本出来,Winform程序又迎来一次新生了,不过9.23日出来的马上下载更新VS,创建新的.netcoreWinform项目,发现并没有Winform窗体设计器。而微软目前则是通过插件的方式,让我们单独下载Winform设计器,这个设计器还是预览版本,很多功...…
2206月 IdentityServer4 QuckStart 授权与自定义Claims的问题 最近在折腾IdentityServer4,为了简单,直接使用了官方给的QuickStart示例项目作为基础进行搭建。有一说一,为了保护一个API,感觉花费的时间比写一个API还要多。 本文基于ASP.NETCORE3.1,IdentityServer43.1.3。代码皆为关键代码,贴全了太多了。 好不容易跑起来了,最终...…
2206月 asp.net core3.1 引用的元包dll版本兼容性问题解决方案 自从.netcore3.1出来后,大家都想立马升级到最新版本。我也是如此,微软也对.netcore3.1的官方组件不断升级,几乎每隔几天就会有部分元包可以升级。每次打开Nuget包管理器,“更新”的tab处总会有个数字暗示着你快点升级!一向有代码洁癖的同学(包括我),都会毫不犹豫的点击“全部升级”。我们总是幻想着使用更...…
2206月 ASP.NET Core中的Action的返回值类型实现 在Asp.netCore之前所有的Action返回值都是ActionResult,Json(),File()等方法返回的都是ActionResult的子类。并且Core把MVC跟WebApi合并之后Action的返回值体系也有了很大的变化。 ActionResult类 ActionResult类是最常用的返回值类型。基...…
2206月 visual studio 2019使用net core3.0创建winform无法使用窗体设计器 微软发布正式版netcore3.0后,迫不及待的想体验一下用visualstudio2019在netcore3.0下创建winform程序。创建方法很简单,和以前visualstudio版本步骤差不多。 创建完成之后,尴尬的事情发生了,无法使用窗体设计器,双击Form1.cs文件不行,使用快捷键shift+F7也不行...…
2206月 asp.net通过消息队列处理高并发请求(以抢小米手机为例) 网站面对高并发的情况下,除了增加硬件,优化程序提高以响应速度外,还可以通过并行改串行的思路来解决。这种思想常见的实践方式就是数据库锁和消息队列的方式。这种方式的缺点是需要排队,响应速度慢,优点是节省成本。 演示一下现象 创建一个在售产品表 CREATETABLE[dbo].[product]( [id][int]...…