NetCore高级系列文章04---async、await原理揭秘
async、await本质上是C#提供的语法糖,编译器编译后是状态机的调用。 先看如下的一段代码,要main方法中调用了三个await方法 将此dll进行反编译为4.0的代码如下: 可见到两个Main方法,也就是说我们在程序中Main方法上加了async关键词,编译器会编译成一个是异步的一个 »
async、await本质上是C#提供的语法糖,编译器编译后是状态机的调用。 先看如下的一段代码,要main方法中调用了三个await方法 将此dll进行反编译为4.0的代码如下: 可见到两个Main方法,也就是说我们在程序中Main方法上加了async关键词,编译器会编译成一个是异步的一个 »
【Github源码】 《上一篇》 介绍了Xmtool工具库中的扩展动态对象,今天我们继续为大家介绍其中的图像处理类库。 在我们的软件系统中,经常需要对图片进行各种各样的处理;例如最常见的头像缩放,需要将用户上传的图片缩放成系统需要的最佳大小。本工具包主要将常用的图片方法进行汇总,方便开发者使用。目前 »
前言 时隔五个月,终于又来更新 StarBlog 系列了~ 这次是呼声很大的评论系统。 由于涉及的代码量比较大,所以本文不会贴出所有代码,只介绍关键逻辑,具体代码请同学们自行查看 GitHub 仓库。 博客前台以及后端涉及的代码主要在以下文件: StarBlog.Web/Services/Comm »
MDP.AspNetCore.Authentication.AzureAD.Services for Service Principal MDP.AspNetCore.Authentication.AzureAD.Services擴充ASP.NET Core既有的身分驗證,加入AzureAD提供的S »
前言 上一篇文章介绍了将 nuget 包发布到 Github Packages 上。 本文更进一步,使用 GitHub Action 搭建 CI/CD 流水线,进行 nuget 的自动构建和发布。? GitHub Action 用起来和之前的 Gitlab CI/CD 是差不多的,可以使用 GitH »
前言 上一篇文章已经把项目模板的nuget包发布到了 nuget 的官方源了,其实还可以发布到其他源,比如 GitHub ,本文记录一下发布到 GitHub Packages 的过程。 注意:本文建立在本系列第二篇文章的基础上,为了更好理解操作过程,请先熟悉本项目的代码结构 创建 GitHub to »
引言 书接上回,【源码解读(一)】EFCORE源码解读之创建DBContext查询拦截 ,在上一篇文章中,主要讲了DBContext的构造函数,以及如何缓存查询方法提升查询性能,还有最重要的拦截查询,托管IOC到web程序,在上一文章中,最后关于DBContext的构造函数的内容没有讲完,在 »
前言 上一篇文章(开发一个现代化的.NetCore控制台程序,包含依赖注入/配置/日志等要素)介绍了开发现代化的.NetCore控制台程序的细节,但这还不够,我又创建了一个脚手架模板,并命名为 FluentConsole.Templates ,可以方便的创建「现代化控制台应用」。 源码地址: htt »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »
前言 主要根据vue官网文档完成。对一些平时可能会用到的知识、组件进行收集,为的是对vue的可用性有一个大致的了解。博客中的组件介绍可能只涉及简单用法,完整用法还是以官网为准。 基础 启动过程: 主文件(main.js)是程序的起点,在主文件里挂在容器。如app.mount( »