摘要: C#冒泡排序算法 简介 冒泡排序算法是一种基础的排序算法,它的实现原理比较简单。核心思想是通过相邻元素的比较和交换来将最大(或最小)的元素逐步"冒泡"到数列的末尾。 详细文章描述 https://mp.weixin.qq.com/s/z_LPZ6QUFNJcwaEw_H5qbQ 代码实现 /// < 阅读全文
posted @ 2023-10-23 07:23 追逐时光者 阅读(627) 评论(0) 推荐(7) 编辑
摘要: 前言 在.NET 6之前我们一直是使用QRCoder来生成二维码(QRCoder是一个非常强大的生成二维码的组件,用到了System.Drawing.Common 包),然后从.NET 6开始,当为非 Windows 操作系统编译引用代码时,平台分析器会发出编译时警告。异常如下: System.Ty 阅读全文
posted @ 2023-10-08 08:00 追逐时光者 阅读(1769) 评论(11) 推荐(25) 编辑
摘要: 前言 前段时间分享了两篇关于.NET反编译相关的文章,然后文章留言区就有小伙伴提问:如何防止被反编译?因此本篇文章我们就来讲讲.NET应用如何防止被反编译。.NET反编译相关的文章可以看如下文章: 4款免费且实用的.NET反编译工具 .NET反编译神器ILSpy怎么用? .NET应用如何防止被反编译 阅读全文
posted @ 2023-09-29 10:43 追逐时光者 阅读(4047) 评论(19) 推荐(38) 编辑
摘要: 前言 2022年6月,随着GitHub Copliot正式面向大众发布。让许多开发者都感受到了AI辅助编程工具的魅力所在,Copilot实现了帮助开发者大大提高了编程开发效率,让程序员朝九晚五成为可能。Copilot近乎是完美的,但还是由于种种原因(比如需要魔法上网、需要花钱购买使用等)使得不少人开 阅读全文
posted @ 2023-09-26 00:03 追逐时光者 阅读(3340) 评论(9) 推荐(23) 编辑
摘要: 前言 前段时间微软发布了适用于VS Code的C#开发工具包(注意目前该包还属于预发布状态但是可以正常使用),因为之前看过网上的一些使用VS Code搭建.NET Core环境的教程看着还挺复杂的就一直没有尝试使用VS Code来编写.NET Core。不过听说C# 开发工具包提供了一系列功能和扩展 阅读全文
posted @ 2023-07-10 08:23 追逐时光者 阅读(3256) 评论(17) 推荐(21) 编辑
摘要: 前言 前面的章节我们介绍了一些值得推荐的Blazor UI组件库,通过该篇文章的组件库介绍最终我选用Ant Design Blazor这个UI框架作为ToDoList系统的前端框架。因为在之前的工作中有使用过Ant Design Vue、Ant Design Angular习惯并且喜欢Ant Des 阅读全文
posted @ 2023-06-29 23:05 追逐时光者 阅读(660) 评论(4) 推荐(13) 编辑
摘要: 前言 因为咱们的MongoDB入门到实战教程Web端准备使用Blazor来作为前端展示UI,本篇文章主要是介绍Blazor是一个怎样的Web UI框架,其优势和特点在哪?并带你快速入门上手ASP.NET Core Blazor(当然这个前提是你要有一定的C#编程基础的情况,假如你完全没有接触过C#的 阅读全文
posted @ 2023-06-14 21:23 追逐时光者 阅读(3123) 评论(52) 推荐(50) 编辑
摘要: 前言 上一章我们把系统所需要的MongoDB集合设计好了,这一章我们的主要任务是使用.NET Core应用程序连接MongoDB并且封装MongoDB数据仓储和工作单元模式,因为本章内容涵盖的有点多关于仓储和工作单元的使用就放到下一章节中讲解了。仓储模式(Repository )带来的好处是一套代码 阅读全文
posted @ 2023-04-09 18:53 追逐时光者 阅读(2394) 评论(17) 推荐(36) 编辑
摘要: Swagger是什么? Swagger是一个规范且完整API文档管理框架,可以用于生成、描述和调用可视化的RESTful风格的 Web 服务。Swagger 的目标是对 REST API 定义一个标准且和语言无关的接口,可以让人和计算机拥有无须访问源码、文档或网络流量监测就可以发现和理解服务的能力。 阅读全文
posted @ 2023-01-04 03:43 追逐时光者 阅读(2079) 评论(3) 推荐(25) 编辑
摘要: 前言: 上一章节我们快速的在Docker容器中安装了MongoDB,并且通过Navicat MongoDB可视化管理工具快速的连接、创建数据库、集合以及添加了文档数据源。这一章节我们主要是了解一下在日常工作中MongoDB一些常用的操作命令。 MongoDB从入门到实战的相关教程 MongoDB从入 阅读全文
posted @ 2023-01-01 12:20 追逐时光者 阅读(1240) 评论(4) 推荐(7) 编辑
摘要: 前言: 为.NET开源者提供的一个推荐自己优秀框架的地址,大家可以把自己的一些优秀的框架,或者项目链接地址存到在这里,提供给广大.NET开发者们学习(注意:排名不分先后,都是十分优秀的开源框架和项目💖)。 Github项目仓库收集地址:https://github.com/YSGStudyHard 阅读全文
posted @ 2022-09-05 21:53 追逐时光者 阅读(12647) 评论(45) 推荐(119) 编辑
摘要: 容器生命周期管理 Docker创建新容器并运行[run] 语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...] OPTIONS说明: -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项; -d: 后台运行容器, 阅读全文
posted @ 2022-09-03 18:29 追逐时光者 阅读(1814) 评论(8) 推荐(19) 编辑
摘要: 前言 网上关于动态文档生成工具有很多如:Docsify、 VuePress、Docute 、Hexo这些都是一些非常优秀的文档生成工具,本章主要介绍如何快速使用Docsify搭建一个快捷、轻量级的个人&团队文档。 什么是Docsify? 一个神奇的文档网站生成器。docsify 可以快速帮你生成文档 阅读全文
posted @ 2022-01-16 22:32 追逐时光者 阅读(33437) 评论(18) 推荐(36) 编辑
摘要: 前言: 都2021年了,你还在为了安装一个开发或者部署环境、软件而花费半天的时间吗?你还在解决开发环境能够正常访问,而发布测试环境无法正常访问的问题吗?你还在为持续集成和持续交付(CI / CD)工作流程苦恼吗?那还在犹豫是什么,Docker能够完美的解决你遇到这所有的问题。 Docker是什么? 阅读全文
posted @ 2021-11-16 03:02 追逐时光者 阅读(13265) 评论(27) 推荐(68) 编辑
摘要: 需求背景: 在需要通过服务端请求传递文件二进制文件流数据到相关的服务端保存时,如对接第三方接口很多情况下都会提供一个上传文件的接口,但是当你直接通过前端Ajax的方式将文件流上传到对方提供的接口的时候往往都会存在跨域的情况,这时候我们就需要通过服务端提交文件流来解决这个跨域的情况。本篇的主角就是使用 阅读全文
posted @ 2021-06-08 01:32 追逐时光者 阅读(3776) 评论(14) 推荐(16) 编辑
摘要: 前言: 随着VS Code的功能和插件的不断强大和完善,它已经成为了我们日常开发中一个必不可缺的伙伴了。在之前我曾经写过一篇SourceTree使用教程详解(一个git可视化管理神器,想要了解的话可以点击查看详情),这篇文章主要是对VS Code如何使用Git可视化管理我们的程序源代码。 VS Co 阅读全文
posted @ 2021-02-19 00:58 追逐时光者 阅读(16295) 评论(29) 推荐(66) 编辑
摘要: 前言 作为一名程序员,我们无时无刻都要考虑着如何通过不断地学习来提升自己的核心竞争力。古人有云:“书中自有黄金屋,书中只有颜如玉”,说明了书籍的重要性,没错工作多年来,发现身边那些优秀的同事、大佬都是喜欢看书,看文章,热爱专研和折腾的人。因此,我们想要升职加薪,提升自己的竞争力需要我们在业余生活,假 阅读全文
posted @ 2021-02-07 21:40 追逐时光者 阅读(13894) 评论(24) 推荐(71) 编辑
摘要: 前言: 在我们日常开发过程中常常会使用到很多其他封装好的第三方中间件(NuGet依赖项)、类库或者是.NET框架中自带的库。但是当你想要对这些类库的方法设置断点调试,然后发现无法F11(逐语句)调试进源码中调用堆栈大部分显示为灰色,而不让您看到调用堆栈中较早发生的事情。如果可以设置断点并在NuGet 阅读全文
posted @ 2021-01-24 23:39 追逐时光者 阅读(3625) 评论(23) 推荐(44) 编辑
摘要: 前言: 在之前的几篇博客中写过.NET Core使用NPOI导出Word和Excel的文章,今天把同样我们日常开发中比较常用的使用Excel导入数据到MySQL数据库中的文章给安排上。与此同时还把NPOI-ExportWordAndExcel-ImportExcelData这个开源项目升级到了.NE 阅读全文
posted @ 2020-09-11 23:31 追逐时光者 阅读(7385) 评论(6) 推荐(20) 编辑
摘要: 前言: 俗话说的好工欲善其事必先利其器,Git分布式版本控制系统是我们日常开发中不可或缺的。目前市面上比较流行的Git可视化管理工具有SourceTree、Github Desktop、TortoiseGit,综合网上的一些文章分析和自己的日常开发实践心得个人比较推荐开发者使用SourceTree, 阅读全文
posted @ 2020-06-23 01:25 追逐时光者 阅读(98135) 评论(17) 推荐(59) 编辑
摘要: 前言 在分布式系统中,由于各个系统服务之间的独立性和网络通信的不确定性,要确保跨系统的事务操作的最终一致性是一项重大的挑战。今天给大家推荐一个.NET开源的处理分布式事务的解决方案基于 .NET Standard 的 C# 库:CAP。 CAP项目介绍 CAP 是一个基于 .NET Standard 阅读全文
posted @ 2023-11-30 20:07 追逐时光者 阅读(305) 评论(4) 推荐(8) 编辑
摘要: 前言 今天的主要任务是快速下载并安装.NET 8 SDK,搭建EasySQLite的前后端框架。 .NET 8 介绍 .NET 8 是 .NET 7 的后继版本。 它将作为长期支持 (LTS) 版本得到三年的支持。 使用技术栈和开发环境 咱们的.NET 8操作SQLite入门到实战教程主要使用技术栈 阅读全文
posted @ 2023-11-30 00:15 追逐时光者 阅读(98) 评论(0) 推荐(1) 编辑
摘要: 前言 对于小程序大家可能都非常熟悉了,随着小程序的不断普及越来越多的公司都开始推广使用起来了。今天接到一个需求就是生成小程序码,并且与运营给的推广图片合并在一起做成一张漂亮美观的推广二维码,扫码这种二维码就可以进入小程序。为了节省服务器内存资源,我想的就是成功调用通微信生成小程序码的接口后直接把微信 阅读全文
posted @ 2023-11-28 22:05 追逐时光者 阅读(1229) 评论(6) 推荐(15) 编辑
摘要: 前言 在ASP.NET Core Web API中设置响应输出Json数据格式有两种方式,可以通过添加System.Text.Json或Newtonsoft.JsonJSON序列化和反序列化库在应用程序中全局设置接口响应的Json数据格式,本文示例使用的是新的Minimal API模式。 JSON序 阅读全文
posted @ 2023-11-27 21:42 追逐时光者 阅读(640) 评论(0) 推荐(8) 编辑
摘要: 前言 今天给大家推荐一个基于.NET Core开源、跨平台的仓储管理系统,数据库支持MSSQL/MySQL:ZEQP.WMS。 仓储管理系统介绍 仓储管理系统(Warehouse Management System,WMS)是一种用于管理和控制仓库操作的软件系统,它可以帮助企业实现对仓库内物品的跟踪 阅读全文
posted @ 2023-11-26 19:47 追逐时光者 阅读(2416) 评论(11) 推荐(26) 编辑
摘要: 前言 古人云:“书中自有黄金屋,书中自有颜如玉”,说明了书籍的重要性。作为程序员,我们需要不断学习以提升自己的核心竞争力。以下是一些优秀的C#/.NET/.NET Core相关学习书籍,值得.NET开发者们学习和专研。书籍已分类,欢迎大家PR分享自己觉得不错的C#/.NET/.NET Core宝藏书 阅读全文
posted @ 2023-11-25 00:43 追逐时光者 阅读(1665) 评论(11) 推荐(31) 编辑
摘要: 前言 今天给大家推荐一套开源、强大且美观的WPF UI控件库:HandyControl。 WPF介绍 WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 Windows 应用。它提供了灵活的布局、数据绑定、样式和模板、动画效果等功能,让开发者可以创建出吸引人且交互性强的应用程序。 Ha 阅读全文
posted @ 2023-11-23 00:21 追逐时光者 阅读(3332) 评论(23) 推荐(51) 编辑
摘要: 前言 今天我们花费一个小时快速了解SQLite数据类型、SQLite常用命令和语法。 七天.NET 8操作SQLite入门到实战详细教程 第一天 SQLite 简介 第二天 在 Windows 上配置 SQLite环境 EasySQLite项目源码地址 GitHub地址:https://github 阅读全文
posted @ 2023-11-22 21:43 追逐时光者 阅读(124) 评论(0) 推荐(4) 编辑
摘要: 前言 SQLite的一个重要的特性是零配置的、无需服务器,这意味着不需要复杂的安装或管理。它跟微软的Access差不多,只是一个.db格式的文件。但是与Access不同的是,它不需要安装任何软件,非常轻巧。 七天.NET 8操作SQLite入门到实战详细教程 第一天 SQLite 简介 EasySQ 阅读全文
posted @ 2023-11-21 21:18 追逐时光者 阅读(511) 评论(0) 推荐(5) 编辑
摘要: 什么是SQLite? SQLite是一个轻量级的嵌入式关系型数据库,它以一个小型的C语言库的形式存在。它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。SQLite还具有跨平台的特性,可以在多个操作系统上运行包括Window 阅读全文
posted @ 2023-11-20 21:36 追逐时光者 阅读(1748) 评论(5) 推荐(15) 编辑
摘要: 前言 在我们日常开发工作中,为了数据安全问题对数据加密、解密是必不可少的。加密方式有很多种如常见的AES,RSA,MD5,SAH1,SAH256,DES等,这时候假如我们有一个封装的对应加密解密工具类可以直接调用,那这样可以节省不少的开发时间。今天推荐一款实用的.NET Core加密解密工具类库:N 阅读全文
posted @ 2023-11-19 23:56 追逐时光者 阅读(354) 评论(2) 推荐(7) 编辑
摘要: 前言 我们在使用Windows系统的时候经常会遇到一些程序不会释放已分配的内存,从而导致电脑变得缓慢。今天给大家推荐一款.NET开源的小巧、智能、免费的Windows内存清理工具:WinMemoryCleaner。 使用Windows内存清理工具来优化内存,这样不必浪费时间去重新启动电脑。 工具主要 阅读全文
posted @ 2023-11-18 22:47 追逐时光者 阅读(544) 评论(0) 推荐(7) 编辑
摘要: 什么是ORM? ORM 是 Object Relational Mapping 的缩写,译为“对象关系映射”,是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。它解决了对象和关系型数据库之间的数据交互问题,ORM的作用是在关系型数据库和业务实体对象之间作一个映射,这样我们在 阅读全文
posted @ 2023-11-16 08:19 追逐时光者 阅读(2464) 评论(18) 推荐(23) 编辑
摘要: 前言 我相信做开发的同学应该都对接过各种各样的第三方平台的登录授权,来获取用户信息(如:微信登录、支付宝登录、QQ登录、GitHub登录等等)。今天给大家推荐一个.NET开源好用的、全面的、方便第三方登录组件集合框架:MrHuo.OAuth。 项目介绍 MrHuo.OAuth是.NET项目集成OAu 阅读全文
posted @ 2023-11-14 23:02 追逐时光者 阅读(1202) 评论(5) 推荐(24) 编辑
摘要: 什么是消息推送? 很多手机APP会不定时的给用户推送消息,例如一些新闻APP会给用户推送用户可能感兴趣的新闻,或者APP有更新了,会给用户推送是否选择更新的消息等等,这就是所谓的“消息推送”。 更多APP消息推送的介绍可查阅该篇文章:十分钟带你了解APP消息推送(Push)👉 常见的一些APP消息 阅读全文
posted @ 2023-11-13 22:07 追逐时光者 阅读(1334) 评论(4) 推荐(14) 编辑
摘要: 前言 前段时间完成了C#经典十大排序算法(完结)然后有很多小伙伴问想要系统化的学习数据结构和算法,不知道该怎么入门,有无好的教程推荐的。今天给大家推荐一个支持C#的开源免费、新手友好的数据结构与算法入门教程:Hello算法。 Hello算法介绍 Hello算法一个开源免费、新手友好的数据结构与算法入 阅读全文
posted @ 2023-11-11 11:07 追逐时光者 阅读(1082) 评论(2) 推荐(18) 编辑
摘要: 前言 大家有使用过.NET开发过OCR工具吗?今天给大家推荐一个基于百度飞桨封装的.NET版本OCR工具类库:PaddleOCRSharp。 项目官方介绍 PaddleOCRSharp 是一个基于百度飞桨PaddleOCR的.NET版本OCR工具类库。项目核心组件PaddleOCR.dll,由C++ 阅读全文
posted @ 2023-11-08 22:51 追逐时光者 阅读(2773) 评论(17) 推荐(47) 编辑
摘要: 前言 昨天分享了一篇介绍Docker可视化管理工具的文章,然后在公众号后台收到了挺多同学的私信问:学习Docker有好的资料值得推荐的吗?想要学习Docker但是无从下手。其实之前我有断断续续的分享过Docker入门到实践的相关教程,可能比较零散。今天就把我自己学习Docker从入门到实践的相关教程 阅读全文
posted @ 2023-11-07 00:24 追逐时光者 阅读(146) 评论(0) 推荐(1) 编辑
摘要: 前言 小程序商城系统是当前备受追捧的开发领域,它可以为用户提供一个更加便捷、流畅、直观的购物体验,无需下载和安装,随时随地轻松使用。今天给大家推荐一个基于.NET、Uni-App开发支持多平台的小程序商城系统(该商城系统完整开源、无封装无加密、商用免费、支持二次开发、支持跨平台、支持多数据库):核心 阅读全文
posted @ 2023-11-06 08:01 追逐时光者 阅读(2992) 评论(14) 推荐(51) 编辑
摘要: 前言 Docker提供了命令行工具(Docker CLI)来管理Docker容器、镜像、网络和数据卷等Docker组件。我们也可以使用可视化管理工具来更方便地查看和管理Docker容器、镜像、网络和数据卷等Docker组件。今天我们来介绍3款免费且好用的 Docker 可视化管理工具。 Docker 阅读全文
posted @ 2023-11-05 17:48 追逐时光者 阅读(3389) 评论(1) 推荐(14) 编辑
摘要: 前言 作为一个.NET开发者而言,有着宇宙最强IDE:Visual Studio加持,让我们的开发效率得到了更好的提升。我们不需要担心环境变量的配置和其他代码管理工具,因为Visual Studio有着众多的拓展工具。废话不多说,直接进入正题。我们日常在使用Visual Studio开发相关的.NE 阅读全文
posted @ 2023-11-03 21:45 追逐时光者 阅读(295) 评论(0) 推荐(6) 编辑
摘要: 前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(公众号每周至少推荐两个优秀的项目和框架当然节假日除外),公众号推文有项目和框架的介绍、功能特点以及部分截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附带项目和框架源码地址)。注意:排名不 阅读全文
posted @ 2023-11-01 21:06 追逐时光者 阅读(4410) 评论(12) 推荐(52) 编辑
摘要: 前言 在我们日常开发工作中对接第三方开放平台,找一款封装完善且全面的SDK能够大大的简化我们的开发难度和提高工作效率。今天给大家推荐一款C#开源、功能完善的字节跳动SDK:SKIT.FlurlHttpClient.ByteDance。 项目官方介绍 可能是全网唯一的 C# 版字节跳动 SDK,封装全 阅读全文
posted @ 2023-10-28 00:09 追逐时光者 阅读(812) 评论(2) 推荐(10) 编辑
摘要: 前言 日常工作中经常与数据打交道的同学肯定会难以避免对Excel的一些数据操作如导入、导出等,但是当对一些大数据量操作Excel时经常会遇到一个常见的问题内存溢出。今天给大家推荐一个简单、高效、低内存避免OOM(内存溢出)的.NET操作Excel开源框架:MiniExcel。 官方介绍 MiniEx 阅读全文
posted @ 2023-10-26 23:58 追逐时光者 阅读(1141) 评论(4) 推荐(16) 编辑
摘要: C#冒泡排序算法 简介 冒泡排序算法是一种基础的排序算法,它的实现原理比较简单。核心思想是通过相邻元素的比较和交换来将最大(或最小)的元素逐步"冒泡"到数列的末尾。 详细文章描述 https://mp.weixin.qq.com/s/z_LPZ6QUFNJcwaEw_H5qbQ 代码实现 /// < 阅读全文
posted @ 2023-10-23 07:23 追逐时光者 阅读(627) 评论(0) 推荐(7) 编辑
摘要: 前言 微软于本月正式发布Visual Studio Code C#开发工具包,此前该开发套件已经以预览版的形式在6月份问世。经过4个月的测试和调整,微软修复了350多个问题,其中大部分是用户反馈导致的问题。此外,微软还对产品进行了300多项有针对性的改进。 VS Code C#开发工具包介绍 微软官 阅读全文
posted @ 2023-10-22 17:35 追逐时光者 阅读(2710) 评论(3) 推荐(13) 编辑
摘要: 前言 经常会有同学会问,有没有好看简单的WPF UI库推荐的。今天就给大家推荐一款简单漂亮的WPF UI,融合多个开源框架组件:AduSkin。 WPF是什么? WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 Windows 应用。它提供了灵活的布局、数据绑定、样式和模板、动画效果 阅读全文
posted @ 2023-10-21 10:21 追逐时光者 阅读(1803) 评论(8) 推荐(12) 编辑
摘要: 前言 基数排序是一种非比较性排序算法,它通过将待排序的数据拆分成多个数字位进行排序。 实现原理 首先找出待排序数组中的最大值,并确定排序的位数。 从最低位(个位)开始,按照个位数的大小进行桶排序,将元素放入对应的桶中。 将各个桶中的元素按照存放顺序依次取出,组成新的数组。 接着按照十位数进行桶排序, 阅读全文
posted @ 2023-10-19 21:50 追逐时光者 阅读(270) 评论(0) 推荐(4) 编辑
摘要: 前言 桶排序是一种线性时间复杂度的排序算法,它将待排序的数据分到有限数量的桶中,每个桶再进行单独排序,最后将所有桶中的数据按顺序依次取出,即可得到排序结果。 实现原理 首先根据待排序数据,确定需要的桶的数量。 遍历待排序数据,将每个数据放入对应的桶中。 对每个非空的桶进行排序,可以使用快速排序、插入 阅读全文
posted @ 2023-10-18 21:31 追逐时光者 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 前言 计数排序是一种非比较性的排序算法,适用于排序一定范围内的整数。它的基本思想是通过统计每个元素的出现次数,然后根据元素的大小依次输出排序结果。 实现原理 首先找出待排序数组中的最大值max和最小值min。 创建一个长度为max-min+1的数组count,用于统计每个元素出现的次数。 遍历待排序 阅读全文
posted @ 2023-10-17 21:11 追逐时光者 阅读(45) 评论(0) 推荐(0) 编辑