浅议.NET遗留应用改造
TLDR:本文介绍了遗留应用改造中的一些常见问题,并对改造所能开展的目标、原则、策略进行了概述。 一、背景概述 1、概述 或许仅“遗留应用”这个标题就比较吸睛,因为我听过太多人吐槽了。Robert Martin在《修改代码的艺术》这本书中做的一个比喻: “遗留…
51ASPX COMMUNITY
技术实践、开发文档与社区资讯,汇集在这里。
TLDR:本文介绍了遗留应用改造中的一些常见问题,并对改造所能开展的目标、原则、策略进行了概述。 一、背景概述 1、概述 或许仅“遗留应用”这个标题就比较吸睛,因为我听过太多人吐槽了。Robert Martin在《修改代码的艺术》这本书中做的一个比喻: “遗留…
我们很高兴地宣布,Visual Studio Code 的 PowerShell Extension 更新现已在扩展市场上推出。 此版本修复了许多与 IntelliSense 相关的问题,并为其他客户端(如带有 LSP 插件的 Emacs 和 Vim)启用了对…
前言: MQTT广泛应用于工业物联网、智能家居、各类智能制造或各类自动化场景等。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,在很多受限的环境下,比如说机器与机器通信、机器与物联网通信等。好了,科普的废话不多说,下面直接通过.NET环境来实现一套M…
为了说明跨请求,创建了两个项目,一个mini api,端口是5001,另一个razor page项目,端口是5280。5280项目会在页面用ajax的方式来请求5001,形成跨域请求,由于是本地测试,host都是localhost,所以通过端口号不同,形成不同…
程序员开发程序,是“ 生 ”的过程,运维人员负责日常运维,是“ 养 ”的过程,在养的过程,运维人员希望在第一时间了解程序的状况,健康检查,是最基础的手段。 var builder = WebApplication.CreateBuilder(args); //…
说明:本篇重点说明MiniAPI引入EntityFramework,EF的使用不是本篇的重点 本篇是在MiniAPI中使用EntityFramework,所以先奉上创建数据的脚本,数据库是SQL Server,可能版本不同,会有一些问题,可以自行调整,这个脚本…
.net开发体系里,大部分本地化的实现都是用资源文件实现(.resx),asp.net core中的多语Culture是指区域性的对象,而UICulture 该对象表示资源管理器在运行时查找区域性特定资源时所用的当前用户接口区域性。 asp.net core实…
JWT不管是基于角色,还是自定义策略,实现的步骤都是大同小异的,基于自定义策略的步骤如下: 1、appsettings.json中配置JWT参 2、添加身份认证和授权服务和中间件,并设置为策略模式和策略名称 3、定义生成Token的方法和验证Toekn参数的方…
身份验证是这样一个过程:由用户提供凭据,然后将其与存储在操作系统、数据库、应用或资源中的凭据进行比较。 在授权过程中,如果凭据匹配,则用户身份验证成功,可执行已向其授权的操作。 授权指判断允许用户执行的操作的过程。也可以将身份验证理解为进入空间(例如服务器、数…
说明:本篇简单说一下日志中常用的几个点,关于日志,后面重点会说到三方日志提供程序 在MiniAPI中,可以通过方法或构造函数中,获取框架自动注入的日志类型,如下方式: app.MapGet("/test", (ILogger<Program> logger) …
http协议,是由客户端发出请求,服务端响应结果并返回,我们把这个请求来回抽象成一个请求管道,那中间件就是这个管道上的阀门,控制着流量的进出和中断。每一个请求都要经过中间件的过滤,滤掉不合格的请求,放行合格的请求,比如用户验证,只有授权的用户通过,没有授权的用…
在OOP里有依赖倒置原则 (The Dependency Inversion Principle),意思是 高层模块不应该依赖于底层模块,二者都应该依赖于抽象。换句话说,依赖于抽象,不要依赖于具体实现。 如下图,在完成订单后要调用快送模块,这时就依赖快递模块的…