.NET Core
文章平均质量分 96
Lamond Lu
I am a passionate coder
展开
-
从零开始实现ASP.NET Core MVC的插件式开发(九) - 升级.NET 5及启用预编译视图
标题:从零开始实现ASP.NET Core MVC的插件式开发(九) - 升级.NET 5及启用预编译视图作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/13992077.html源代码:https://github.com/lamondlu/Mystique适用版本:.NET Core 3.1, .NET 5前景回顾从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用Application Part动态加载控制器和视图.原创 2020-11-17 10:45:02 · 526 阅读 · 0 评论 -
[译]如何在ASP.NET Core中实现面向切面编程(AOP)
原文地址:ASPECT ORIENTED PROGRAMMING USING PROXIES IN ASP.NET CORE原文作者:ZANID HAYTAM译文地址:如何在ASP.NET Core中实现面向切面编程(AOP)译文作者:Lamond Lu前言在使用了Spring Boot数月之后, 我发觉ASP.NET Core中缺失了对面向切面编程(AOP)的默认支持。维基百科中针对AOP的定义:面向切面编程(AOP)是一种编程范例,其旨在通过允许跨领域关注点的分离来提高模块化。它.翻译 2020-09-07 11:28:34 · 561 阅读 · 0 评论 -
.NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中
目录.NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中前言笔者最近在开发和维护一个.NET Core项目,其中使用几个非常有意思的.NET Core相关的扩展,在此总结整理一下。EF Core性能调优如果你的项目中使用了EF Core, 且正在处于性能调优阶段,那么了解EF Core生成的SQL语句是非常关键的。那么除了使用第三方工具,如何查看EF Core生成的SQL语句呢?这里笔者将给出一个基于.NET Core内置日志组件的实现方式。创建一个实例项目.原创 2020-08-23 22:38:22 · 1415 阅读 · 0 评论 -
记近一年线上项目经验及架构变更记录
简介M项目, 是一个电子社保业务系统,2019.8月团队接手了这个项目的开发工作,到2020.7月客户的业务量翻了4倍,工作日同时在线员工数量40人,以下记录总结2019.8-至今项目的架构变化,以及项目中积累的一些经验。[2019.8] 项目接手后的初始架构物理架构M项目的原始物理架构非常的简单,属于最简单的单机单体系统,大部分服务都寄宿在一台双核,8G内存的虚拟机中(包含MySQL数据库服务和文件存储服务),只有邮件发送服务使用的是第三方服务SendGrid。相对于客户最多10人同时在线的需求,原创 2020-08-06 21:45:44 · 529 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(八) - Razor视图相关问题及解决方案
标题:从零开始实现ASP.NET Core MVC的插件式开发(八) - Razor视图相关问题及解决方案作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/13197683.html源代码:https://github.com/lamondlu/Mystique前景回顾从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用Application Part动态加载控制器和视图从零开始实现ASP.NET Core MVC的插件式.原创 2020-06-29 21:07:19 · 558 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(七) - 近期问题汇总及部分问题解决方案
标题:从零开始实现ASP.NET Core MVC的插件式开发(七) - 问题汇总及部分解决方案作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/12930713.html源代码:https://github.com/lamondlu/Mystique前景回顾从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用Application Part动态加载控制器和视图从零开始实现ASP.NET Core MVC的插件式开发(二).原创 2020-05-21 14:50:55 · 220 阅读 · 0 评论 -
如何在C#/.NET Core中使用责任链模式
原文:Chain Of Responsbility Pattern In C#/.NET Core作者:Wade译者:Lamond Lu最近我有一个朋友在研究经典的“Gang Of Four”设计模式。他经常来询问我在实际业务应用中使用了哪些设计模式。单例模式、工厂模式、中介者模式 - 都是我之前使用过,甚至写过相关文章的模式。但是有一种模式是我还没有写过文章,即责任链模式。什么是责...翻译 2020-05-07 23:23:47 · 184 阅读 · 0 评论 -
ASP.NET Core中配置监听URLs的五种方式
原文: 5 ways to set the URLs for an ASP.NET Core app作者: Andrew Lock译者: Lamond Lu默认情况下,ASP. NET Core应用会监听一下2个Url:http://localhost:5000https://localhost:5001在本篇博文中,我将展示如何使用五种不同的方式改变应用监听的URLs。在...转载 2020-04-19 09:30:51 · 2420 阅读 · 0 评论 -
避免在ASP.NET Core 3.0中为启动类注入服务
原文: https://andrewlock.net/avoiding-startup-service-injection-in-asp-net-core-3/作者: Andrew Lock译者: Lamond Lu本篇是如何升级到ASP.NET Core 3.0系列文章的第二篇。Part 1 - 将.NET Standard 2.0类库转换为.NET Core 3.0类库Pa...翻译 2020-01-15 08:30:08 · 325 阅读 · 0 评论 -
IHostingEnvironment VS IHostEnvironment - .NET Core 3.0中的废弃类型
原文: https://andrewlock.net/ihostingenvironment-vs-ihost-environment-obsolete-types-in-net-core-3/作者: Andrew Lock译者: Lamond Lu本篇是如何升级到ASP.NET Core 3.0系列文章的第二篇。Part 1 - 将.NET Standard 2.0类库转换为....翻译 2020-01-05 22:42:18 · 1912 阅读 · 0 评论 -
[小技巧]你真的了解C#中的Math.Round么?
今天在某.NET Core 群中看到有人在问Math.Round的问题。其实这个问题之前有很多人遇到了,在此总结一下。开发者为了实现小数点后 2 位的四舍五入,编写了如下代码,var num = Math.Round(12.125, 2);代码非常的简单,开发者实际得到的结果是12.12, 这与其所预期的四舍五入结果12.13相悖。其实产生这个结果的原因是由于Math.Round 默认...原创 2019-12-20 10:05:55 · 250 阅读 · 0 评论 -
使用.NET Core创建Windows服务 - 使用.NET Core工作器方式
原文:Creating Windows Services In .NET Core – Part 3 – The “.NET Core Worker” Way作者:Dotnet Core Tutorials译者:Lamond Lu译文:使用.NET Core创建Windows服务 - 使用.NET Core工作器方式使用.NET Core创建Windows服务使用微软推荐方式使...翻译 2019-12-14 08:54:57 · 419 阅读 · 0 评论 -
深入理解.NET Core的基元(三) - 深入理解runtimeconfig.json
原文:Deep-dive into .NET Core primitives, part 3: runtimeconfig.json in depth作者:Nate McMaster译文:深入理解.NET Core的基元(三) - 深入runtimeconfig.json作者: Lamond Lu前情回顾深入理解.NET Core的基元(一):deps.json, runtimec...翻译 2019-12-03 08:52:57 · 1473 阅读 · 0 评论 -
EF Core For MySql查询中使用DateTime.Now作为查询条件的一个小问题
背景最近一直忙于手上澳洲线上项目的整体迁移和升级的准备工作,导致博客和公众号停更。本周终于艰难的完成了任务,借此机会,总结一下项目中遇到的一些问题。EF Core一直是我们团队中中小型项目常用的ORM框架,在使用SQL Server作为持久化仓储的场景一下,一直表现还中规中矩。但是在本次项目中,项目使用了MySql作为持久化仓储。为了与EF Core集成,团队使用了Pomelo.Entity...原创 2019-11-27 21:38:56 · 384 阅读 · 0 评论 -
深入理解.NET Core的基元(二) - 共享框架
原文:Deep-dive into .NET Core primitives, part 2: the shared framework作者:Nate McMaster译文:深入理解.NET Core的基元(二) - 共享框架作者: Lamond Lu本篇是之前翻译过的《深入理解.NET Core的基元: deps.json, runtimeconfig.json, dll文件》的后...翻译 2019-11-06 09:32:07 · 464 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(六) - 如何加载插件引用
标题:从零开始实现ASP.NET Core MVC的插件式开发(六) - 如何加载插件引用。作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11717254.html源代码:https://github.com/lamondlu/DynamicPlugins[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ie...原创 2019-10-22 07:41:08 · 333 阅读 · 2 评论 -
[小技巧]EF Core中如何获取上下文中操作过的实体
原文地址:https://www.cnblogs.com/lwqlun/p/10576443.html作者:Lamond Lu源代码:https://github.com/lamondlu/EFCoreFindSample背景介绍当我们在工作单元(UnitOfWork)中使用EF/EF Core的时候,为了要保持事务,一个用户操作只能调用一次SaveChange方法,但是有时候一个用...原创 2019-03-22 15:43:03 · 474 阅读 · 0 评论 -
使用Try.NET创建可交互.NET文档
原文地址:Create Interactive .NET Documentation with Try .NET原文作者:Maria译文地址:https://www.cnblogs.com/lwqlun/p/10894497.html译者:Lamond Lu背景当我们编写开发人员使用的文档时,我们需要捕捉他们的兴趣,并引导他们尽快走上成功的道路。开发人员生态系统一直在为社区提供可交互...原创 2019-05-21 09:17:06 · 147 阅读 · 0 评论 -
针对.NET Core, Xamarin以及.NET的自动类型安全Rest库: Refit
本文大部分内容是针对Refit官网的翻译。官网地址: https://github.com/reactiveui/refitRefit是一个类似于Retrofit的Restful Api库,使用它,你可以将你的Restful Api定义在接口中。例如:public interface IGitHubApi{ [Get("/users/{user}")] Task<...原创 2019-05-07 18:09:39 · 297 阅读 · 1 评论 -
C#中使用Bogus创建模拟数据
原文:CREATING SAMPLE DATA FOR C#作者:Bruno Sonnino译文:C#中使用Bogus创建模拟数据译者: Lamond Lu背景在我每次写技术类博文的时候,经常做的一件事就是创建模拟数据。在每篇博文中,为了解释某些概念,我需要创建许多模拟数据。这是一个我在实际中遇到的问题,因为我需要为我的程序找到一些合适的数据。有些时候,我会从数据库中找一些数据(No...原创 2019-04-28 22:29:01 · 365 阅读 · 0 评论 -
如何在ASP.NET Core中使用Azure Service Bus Queue
原文:USING AZURE SERVICE BUS QUEUES WITH ASP.NET CORE SERVICES作者:damienbod译文:如何在ASP.NET Core中使用Azure Service Bus Queue地址:https://www.cnblogs.com/lwqlun/p/10760227.html作者:Lamond Lu源代码: https://gith...原创 2019-04-24 10:13:09 · 123 阅读 · 0 评论 -
使用强类型实体Id来避免原始类型困扰(一)
原文地址:https://andrewlock.net/using-strongly-typed-entity-ids-to-avoid-primitive-obsession-part-1/作者:Andrew Lock译者:Lamond Lu译文地址:https://www.cnblogs.com/lwqlun/p/10693763.html回想一下,在你以往编程的过程中,是否经常...原创 2019-04-12 21:33:13 · 176 阅读 · 0 评论 -
.NET中的状态机库Stateless
标题:.NET中的状态机库Stateless作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/10674018.html介绍什么是状态机和状态模式状态机是一种用来进行对象建模的工具,它是一个有向图形,由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而“运行”。每个事件都在属于“当前” 节点的转移函数的控制范围内,其中函数的范...原创 2019-04-09 13:17:23 · 450 阅读 · 0 评论 -
使用MediatR重构单体应用中的事件发布/订阅
标题:使用MediatR重构单体应用中的事件发布/订阅作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/10640280.html源代码:https://github.com/lamondlu/EventHandlerInSingleApplication背景在之前的一篇文章中,我分享了一个在ASP.NET Core单体程序中,使用事件...原创 2019-04-02 09:59:48 · 596 阅读 · 0 评论 -
如何使用FluentMigrator进行数据库迁移
标题:如何使用FluentMigrator进行数据库迁移地址:https://www.cnblogs.com/lwqlun/p/10649949.html作者: Lamond LuFluentMigratorFluent Migrator是一个基于.NET的迁移框架,你可以像使用Ruby on Rails Migrations一样使用它。Fluent Migrator的最新版本是3....原创 2019-04-04 10:55:57 · 747 阅读 · 0 评论 -
如何在ASP.NET Core自定义中间件中读取Request.Body和Response.Body的内容?
文章名称: 如何在ASP.NET Core自定义中间件读取Request.Body和Response.Body的内容?作者: Lamond Lu地址: https://www.cnblogs.com/lwqlun/p/10954936.html源代码: https://github.com/lamondlu/webapi-logger背景最近在徒手造轮子,编写一个ASP.NET C...原创 2019-05-31 15:42:40 · 3052 阅读 · 0 评论 -
如何在C#中调试LINQ查询
原文:How to Debug LINQ queries in C#作者:Michael Shpilt译文:如何在C#中调试LINQ查询译者:Lamond Lu在C#中我最喜欢的特性就是LINQ。使用LINQ, 我们可以获得一种易于编写和理解的简洁语法,而不是单调的foreach循环,它可以让你的代码更加美观。但是LINQ也有不好的地方,就是调试起来非常难。我们无法知道查询中到底...翻译 2019-06-25 20:30:27 · 433 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板
标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11155666.html源代码:https://github.com/lamondlu/DynamicPlugins在上一篇中,我们介绍了通过一个最简单了例子,给大家演示了一下,如何在ASP.NET...原创 2019-07-10 12:28:45 · 133 阅读 · 0 评论 -
使用.NET Core创建Windows服务(二) - 使用Topshelf方式
原文:Creating Windows Services In .NET Core – Part 2 – The “Topshelf” Way作者:Dotnet Core Tutorials译者:Lamond Lu译文:使用.NET Core创建Windows服务(二) - 使用Topshelf方式使用.NET Core创建Windows服务使用微软推荐方式使用Topshel...翻译 2019-10-05 21:30:12 · 1121 阅读 · 0 评论 -
使用.NET Core创建Windows服务(一) - 使用官方推荐方式
原文:Creating Windows Services In .NET Core – Part 1 – The “Microsoft” Way作者:Dotnet Core Tutorials译者:Lamond Lu译文:使用.NET Core创建Windows服务(一) - 使用官方推荐方式创建Windows服务来运行批处理任务或者运行后台任务,是一种非常常见的模式,但是由于云服...翻译 2019-10-04 16:45:06 · 724 阅读 · 0 评论 -
在.NET Core中使用DispatchProxy“实现”非公开的接口
原文地址:“Implementing” a non-public interface in .NET Core with DispatchProxy原文作者:Filip W.译文地址:https://www.cnblogs.com/lwqlun/p/11575686.html译者:Lamond Lu简介反射是.NET中一个非常强大的概念,对于每一个C#开发人员来说,迟早都会使用到这个...翻译 2019-09-24 11:08:41 · 263 阅读 · 0 评论 -
ASP.NET Core 3.0中使用动态控制器路由
原文:Dynamic controller routing in ASP.NET Core 3.0作者:Filip W译文:https://www.cnblogs.com/lwqlun/p/11461657.html译者:Lamond Lu译者注今天在网上看到了这篇关于ASP.NET Core动态路由的文章,感觉蛮有意思的,给大家翻译一下,虽然文中的例子不一定会在日常编码中出现,但...原创 2019-09-04 21:52:08 · 2250 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(四) - 插件安装
标题:从零开始实现ASP.NET Core MVC的插件式开发(四) - 插件安装作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11260750.html源代码:https://github.com/lamondlu/DynamicPlugins前情回顾从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用App...原创 2019-08-12 22:53:03 · 662 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(五) - 插件的删除和升级
标题:从零开始实现ASP.NET Core MVC的插件式开发(五) - 使用AssemblyLoadContext实现插件的升级和删除作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11395828.html源代码:https://github.com/lamondlu/DynamicPlugins前景回顾:从零开始实现ASP.N...原创 2019-08-23 16:56:17 · 453 阅读 · 0 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(三) - 如何在运行时启用组件
标题:从零开始实现ASP.NET Core MVC的插件式开发(三) - 如何在运行时启用组件作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11260750.html源代码:https://github.com/lamondlu/DynamicPlugins前情回顾从零开始实现ASP.NET Core MVC的插件式开发(一) -...原创 2019-07-29 05:57:00 · 789 阅读 · 1 评论 -
从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用ApplicationPart动态加载控制器和视图
标题:从零开始实现ASP.NET Core MVC的插件式开发(一) - 使用Application Part动态加载控制器和视图作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/11137788.html源代码:https://github.com/lamondlu/DynamicPlugins前言如果你使用过一些开源CMS的话,肯定...原创 2019-07-05 14:37:55 · 588 阅读 · 0 评论 -
[小技巧]ASP.NET Core中如何预压缩静态文件
原文地址:Pre-compressed static files with ASP.NET Core作者:Gunnar Peipman译者:Lamond Lu译文:https://www.cnblogs.com/lwqlun/p/10552131.html示例代码:https://github.com/lamondlu/CompressedStaticFileSampleWeb应用...原创 2019-03-18 20:44:50 · 330 阅读 · 0 评论 -
如何使用AWS和Azure的配置存储服务保存读取配置
原文:Want to yank configuration values from your .NET Core apps? 作者:pauljwheeler译文:https://www.cnblogs.com/lwqlun/p/10508748.html译者:Lamond Lu示例源代码:https://github.com/lamondlu/LoadConfigurationFromC...原创 2019-03-12 13:48:51 · 189 阅读 · 0 评论 -
ASP.NET Core中实现单体程序的事件发布/订阅
标题:ASP.NET Core中实现单体程序的事件发布/订阅作者:Lamond Lu地址:https://www.cnblogs.com/lwqlun/p/10468058.html项目源代码:https://github.com/lamondlu/EventHandlerInSingleApplication背景事件发布/订阅是一种非常强大的模式,它可以帮助业务组件间实现完全解耦...原创 2019-03-04 10:42:00 · 1132 阅读 · 0 评论 -
ASP.NET Core中使用GraphQL - 最终章 Data Loader
ASP.NET Core中使用GraphQL - 目录ASP.NET Core中使用GraphQL - 第一章 Hello WorldASP.NET Core中使用GraphQL - 第二章 中间件ASP.NET Core中使用GraphQL - 第三章 依赖注入ASP.NET Core中使用GraphQL - 第四章 GrahpiQLASP.NET Core中使用GraphQL -...原创 2019-01-24 07:14:16 · 224 阅读 · 0 评论