随笔分类 -  .Net core

摘要:异常处理,也可以做得很优雅。 一、前言 异常处理的重要性,老司机都清楚。 这篇文章,我们来理一下Dotnet Core异常处理的几种方式。 Try Catch方式 Exception Filter方式 内建的异常处理中间件 自定义的异常处理中间件 这是目前使用比较多的几种方式。其中,第1、2种其实算 阅读全文
posted @ 2020-08-26 13:28 老王Plus 阅读(1022) 评论(2) 推荐(2) 编辑
摘要:理论跟实践的关系,说远不远,说近不近。能不能把理论用到实践上,还真不好说。 通常讲到设计模式,一个最通用的原则是SOLID: S - Single Responsibility Principle,单一责任原则 O - Open Closed Principle,开闭原则 L - Liskov Su 阅读全文
posted @ 2020-08-19 12:48 老王Plus 阅读(1795) 评论(6) 推荐(14) 编辑
摘要:公开API的安全,其实更重要。 一、API的安全 作为一个Dotnet Core的老司机,写API时,能兼顾到API的安全,这是一种优雅。 通常,我们会用认证来保证API的安全,无敌的Authorize能解决我们很多的问题。 但是,总有一些场合,我们没办法用Authorize,而只能用匿名或不加验证 阅读全文
posted @ 2020-08-17 12:03 老王Plus 阅读(1278) 评论(11) 推荐(7) 编辑
摘要:前文写了关于C#中的异步编程。后台有无数人在讨论,很多人把异步和多线程混了。 文章在这儿:一文说通C#中的异步编程 所以,本文从体系的角度,再写一下这个异步编程。 一、C#中的异步编程演变 1. 异步编程模型 这是C#中早期的异步模型,通过IAsyncResult接口来实现。 实现的代码大体是这个样 阅读全文
posted @ 2020-08-05 11:13 老王Plus 阅读(1669) 评论(5) 推荐(11) 编辑
摘要:天天写,不一定就明白。 又及,前两天看了一个关于同步方法中调用异步方法的文章,里面有些概念不太正确,所以整理了这个文章。 一、同步和异步。 先说同步。 同步概念大家都很熟悉。在异步概念出来之前,我们的代码都是按同步的方式写的。简单来说,就是程序严格按照代码的逻辑次序,一行一行执行。 看一段代码: p 阅读全文
posted @ 2020-07-22 10:29 老王Plus 阅读(10540) 评论(14) 推荐(28) 编辑
摘要:DateTime,就是一个世界的大融合。 日期和时间,在我们开发中非常重要。DateTime在C#中,专门用来表达和处理日期和时间。 本文算是多年使用DateTime的一个总结,包括DateTime对象的整体应用,以及如何处理不同的区域、时区、格式等内容。 一、什么是DateTime 跟我们想的不一 阅读全文
posted @ 2020-07-16 10:58 老王Plus 阅读(6076) 评论(6) 推荐(12) 编辑
摘要:用C#代替Javascript来做Web应用,是有多爽? 今天聊聊 Blazor。 Blazor 是一个 Web UI 框架。这个框架允许开发者使用 C# 来创建可运行于浏览器的具有完全交互 UI 的 Web 应用。 可以理解为,这是一个 C# 语言的 Vue / Angular / React,可 阅读全文
posted @ 2020-07-08 14:27 老王Plus 阅读(2759) 评论(10) 推荐(2) 编辑
摘要:用好数据映射,MongoDB via Dotnet Core开发变会成一件超级快乐的事。 一、前言 MongoDB这几年已经成为NoSQL的头部数据库。 由于MongoDB free schema的特性,使得它在互联网应用方面优于常规数据库,成为了相当一部分大厂的主数据选择;而它的快速布署和开发简单 阅读全文
posted @ 2020-06-24 11:06 老王Plus 阅读(1459) 评论(2) 推荐(2) 编辑
摘要:ML.net已经进到了1.5版本。作为Microsoft官方的机器学习模型,你不打算用用? 一、前言 ML.net可以让我们很容易地在各种应用场景中将机器学习加入到应用程序中。这是这个框架很重要的一点。 通过ML.net,我们可以使用手中的可用数据,进行预测、分析、检测,而不需要进行过于复杂的编程。 阅读全文
posted @ 2020-06-17 09:47 老王Plus 阅读(3310) 评论(6) 推荐(9) 编辑
摘要:这是一文说通系列的第二篇,里面有些内容会用到第一篇中间件的部分概念。如果需要,可以参看第一篇:一文说通Dotnet Core的中间件 一、前言 后台任务在一些特殊的应用场合,有相当的需求。 比方,我们需要实现一个定时任务、或周期性的任务、或非API输出的业务响应、或不允许并发的业务处理,像提现、支付 阅读全文
posted @ 2020-06-10 10:24 老王Plus 阅读(2709) 评论(0) 推荐(1) 编辑
摘要:前几天,公众号后台有朋友在问Core的中间件,所以专门抽时间整理了这样一篇文章。 一、前言 中间件(Middleware)最初是一个机械上的概念,说的是两个不同的运动结构中间的连接件。后来这个概念延伸到软件行业,大家把应用操作系统和电脑硬件之间过渡的软件或系统称之为中间件,比方驱动程序,就是一个典型 阅读全文
posted @ 2020-06-03 16:36 老王Plus 阅读(1943) 评论(2) 推荐(8) 编辑
摘要:区块链这么火,咱也跟个风。 一、前言 最近,银行总行关于数字货币即将推出的消息频传,把BTC也带得来了一波反弹。 借着这个风,我们也研究一下区块链。 通常大家说到区块链,实际包括两部分概念: 第一个概念,就是狭义上的区块链。听起来很高大上又很复杂,但追根到底,它就是一种加密应用。 提起加密,我们脑袋 阅读全文
posted @ 2020-05-27 08:19 老王Plus 阅读(4164) 评论(15) 推荐(28) 编辑
摘要:作为一个老司机,怎能没有自己的私人代码仓库? 前言 Github大家都熟悉。 除了开源的项目外,有时候,大家也会把自己或团队、公司的项目传到Github的私有仓库里,把Github当成自己的私人Git Server。 但是,用Github会有一些问题: Github从国内访问不是很稳定,有时候会很慢 阅读全文
posted @ 2020-05-22 10:47 老王Plus 阅读(3180) 评论(2) 推荐(3) 编辑
摘要:最近,团队的小伙伴们在做项目时,需要用到JWT认证。遂根据自己的经验,整理成了这篇文章,用来帮助理清JWT认证的原理和代码编写操作。 第一部分:Dotnet core使用JWT认证授权最佳实践(一) (接上文) 测试运行 % dotnet run 等程序运行起来后,在浏览器输入:http://loc 阅读全文
posted @ 2020-05-19 08:33 老王Plus 阅读(2654) 评论(7) 推荐(7) 编辑
摘要:最近,团队的小伙伴们在做项目时,需要用到JWT认证。遂根据自己的经验,整理成了这篇文章,用来帮助理清JWT认证的原理和代码编写操作。 一、JWT JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息 阅读全文
posted @ 2020-05-15 10:54 老王Plus 阅读(4907) 评论(0) 推荐(10) 编辑
摘要:上一篇文章,介绍了这个架构中,WebServer的选择,以及整个架构中扩展时的思路。 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(三) 五、架构实践 前边用了三篇文章,详细介绍了这个架构的各个部分的选择以及安装。 这篇文章,我会用一个Demo项目,从开发到部署,包括MongoDB数据的 阅读全文
posted @ 2020-05-06 09:38 老王Plus 阅读(2417) 评论(3) 推荐(5) 编辑
摘要:上一篇文章介绍了这个架构中,选择MongoDB做为数据库的原因,及相关的安装操作。 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(二) 三、WebServer 在SOA和gRPC大行其道的今天,WebServer在系统中属于重中之重,是一个系统的发动机。 在第一篇文章中我们说过,服务器需 阅读全文
posted @ 2020-04-28 09:25 老王Plus 阅读(1703) 评论(0) 推荐(0) 编辑
摘要:上一篇文章,把这个架构的起因,和操作系统的选择进行了详细说明。 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(一) 二、数据库的选择 对于一个10W+用户的系统,数据库选择很重要。 一般来说,这个用户量,根据不同的应用,会形成单表年度400W~4000W条的数据量。在这个数据量下,我们需 阅读全文
posted @ 2020-04-23 09:28 老王Plus 阅读(2056) 评论(4) 推荐(2) 编辑
摘要:前言 这是一个基于中小型企业或团队的架构设计。 不考虑大厂。有充分的理由相信,大厂有绝对的实力来搭建一个相当复杂的环境。 中小型企业或团队是个什么样子? 开发团队人员配置不全,部分人员身兼开发过程上下游的数个职责; 没有专职的维护人员,或者维护人员实力不足以完全掌控生产和开发环境。 这种情况下,过于 阅读全文
posted @ 2020-04-15 08:18 老王Plus 阅读(1557) 评论(2) 推荐(2) 编辑