Loading

摘要: 本系列适用于已有一定.NET开发基础,学习asp.net core人士。 基础篇 asp.net core之Startup asp.net core之依赖注入 asp.net core之中间件 asp.net core之Host asp.net core之Kestrel asp.net core之配 阅读全文
posted @ 2023-07-24 16:15 饭勺oO 阅读(1322) 评论(1) 推荐(4) 编辑
摘要: 开源版本ABP CLI里面的模板是不包含微服务模板的,而商业版里面有一个微服务模板。这个模板据说是微服务的最佳实践,eShopOnAbp这个仓库的结构基本也和商业版的微服务模板一致。那就开始学习一下。微服务模板的大致结构如下图所示: shared目录 shared目录主要包含微服务共用的一些模板,包 阅读全文
posted @ 2023-02-28 14:56 饭勺oO 阅读(826) 评论(3) 推荐(1) 编辑
摘要: 前面的文章我们都初步学习了Source Generators的使用方式以及做了一些简单的代码生成工具。 但是Source Generators除了做自动代码生成之外,还能有别的应用场景,本文来了解一下Source Generators的应用场景。 介绍 Source Generators(源代码生成 阅读全文
posted @ 2024-04-12 14:13 饭勺oO 阅读(250) 评论(2) 推荐(2) 编辑
摘要: 前面我们简单的实现了一个从swagger生成实体类的Generator,在实际使用中,通过nuget包引用使用会更方便,那么本篇文章将介绍如何将Generator打包成Nuget来使用。 打包Nuget 这里我们将GenerateClassFromSwagger.Analysis打包成Nuget进行 阅读全文
posted @ 2024-04-11 12:04 饭勺oO 阅读(180) 评论(0) 推荐(5) 编辑
摘要: 上一篇文章学习了通过获取和解析swagger.json的内容,来生成API的请求响应类。 但是其中无法移动与编辑。 那么本文将介绍如何输出生成的文件。 EmitCompilerGeneratedFiles 在控制台程序中,的PropertyGroup添加true 再次编译,文件将会输出到obj/De 阅读全文
posted @ 2024-04-02 16:10 饭勺oO 阅读(259) 评论(1) 推荐(0) 编辑
摘要: 前面学习了一些Source Generators的基础只是,接下来就来实践一下,用这个来生成我们所需要的代码。 本文将通过读取swagger.json的内容,解析并生成对应的请求响应类的代码。 创建项目 首先还是先创建两个项目,一个控制台程序,一个类库。 添加swagger文件 在控制台程序中添加F 阅读全文
posted @ 2024-04-02 09:51 饭勺oO 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 前面我们使用了IIncrementalGenerator来生成代码,接下来我们来详细了解下IIncrementalGenerator的核心部分IncrementalValueProvider。 介绍 IncrementalValueProvider是基于管道的模式,将我们需要的数据进行处理转换后传递 阅读全文
posted @ 2024-04-01 11:27 饭勺oO 阅读(268) 评论(0) 推荐(1) 编辑
摘要: 前面我们用ISourceGenerator来实现代码生成。但是在官方的介绍中有这么一个警告:Warning: Source generators implementing ISourceGenerator have been deprecated in favor of incremental ge 阅读全文
posted @ 2024-03-28 15:55 饭勺oO 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 介绍 源生成器是 C# 开发人员可以编写的一种新组件,允许执行两个主要操作: 检索表示正在编译的所有用户代码的编译对象。 可以检查此对象,并且可以编写适用于正在编译的代码的语法和语义模型的代码,就像现在使用分析器一样。 生成可在编译过程中添加到编译对象的 C# 源文件。 也就是说,在编译代码时,可以 阅读全文
posted @ 2024-03-28 11:21 饭勺oO 阅读(472) 评论(6) 推荐(9) 编辑
摘要: 之前造了一个多语言国际化的轮子,第一个版本UI的体验感不是太好,用blazor重新实现了一个UI,体验感应该还算不错。 LinguaNex LinguaNex是一个多语言连接中心,主打一个一处配置多语言,多处使用的想法。让项目方便快捷实现国际化(多语言)。 可配关联项目,主项目关联其他项目即可获取其 阅读全文
posted @ 2024-02-29 17:26 饭勺oO 阅读(575) 评论(0) 推荐(6) 编辑
摘要: 接上文,我们已经初步完成了单层到多层的拆分,接下来就是再优化我们的结构了。 升级思路 在前文的Core项目中,包含了我们所有的基础功能,但是有些项目可能只需要部分功能却引用整一块Core的话,会显得有些多余,需要将这部分基础设施再做一下细致化的拆分。 在Host项目中,仍旧还有许多功能代码没有拆分, 阅读全文
posted @ 2024-01-23 16:54 饭勺oO 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 接上文,我们已经粗略的拆分了单层应用,主要讲一些基础设施功能代码抽离出去,但是业务代码部分还是比较臃肿。 接下来就准备将业务部分抽离一下。 思路 前面将一些基础的部分抽离出去了,接下来就是业务和API方面,这里准备再抽离出两个类库。分别是Api和Application。 Api主要是接口部分的代码。 阅读全文
posted @ 2024-01-22 17:51 饭勺oO 阅读(324) 评论(0) 推荐(1) 编辑