1.IOC的各种叫法 依赖反转(Dependency Inversion),SOLD原则中的D 控制反转(Inversion of Control) 依赖注入 Dependency Injection 2.什么是依赖注入 一个类或对象依赖于另一个类或对象,即一个对象需要另一个对象来完成某个功能 OO ...
一、概述 上篇文章介绍了木舟如何上传模块热部署,那么此篇文章将介绍如何利用HTTP网络组件接入设备,那么有些人会问木舟又是什么,是什么架构为基础,能做什么呢? 木舟 (Kayak) 是什么? 木舟(Kayak)是基于.NET6.0软件环境下的surging微服务引擎进行开发的, 平台包含了微服务和物 ...
前言 推荐一款强大的企业级工具 — SSCMS 内容管理系统。 SSCMS 为企业级客户设计,完全开源免费,适用于商业用途且无需支付任何产品或授权费用。 本文将详细介绍 SSCMS 系统的功能、用户界面及使用注意事项等内容。 项目介绍 SSCMS 基于 .NET Core 开发,无论是在 Windo ...
Avalonia是什么? Avalonia是一个强大的框架,使开发人员能够使用.NET创建跨平台应用程序。它使用自己的渲染引擎绘制UI控件,确保在Windows、macOS、Linux、Android、iOS和WebAssembly等不同平台上具有一致的外观和行为。这意味着开发人员可以共享他们的UI ...
一、 什么是Yolo You Only Look Once是基于深度学习的一种实时目标检测算法。有速度快、实时性好的特点。Yolo依赖Python和相关深度学习框架。二、 什么是YoloDotNet YoloDotNet是Yolo在.NET平台的实现,基于C# .NET8,开发者可以使用熟悉的C#语 ...
在编辑Word文档时,我们有时需要调整段落的布局、删除不必要的段落以优化文档的结构和阅读体验。本文将通过以下3个简单示例演示如何使用免费.NET库删除Word文档中的段落 。 C# 删除Word中的指定段落 C# 删除Word中的所有段落 C# 删除Word中的空白段落 免费.NET Word 库 ...
前言 .NET 生态中有哪些值得推荐的网络通信框架?今天,给大家推荐一个非常优秀的开源项目——NetCoreServer。 NetCoreServer 是一款 .NET 开源、免费、快速且低延迟的异步套接字服务器和客户端库。无论是需要搭建高性能的服务端应用,还是开发高效的客户端程序,NetCoreS ...
最近腾讯云轻量服务器centos7.9到期了,续费太贵,于是整了一个ubuntu24.04服务器,来继续折腾,主要是上面部署的前几年写的垃圾小程序,要不然也懒得折腾了。此篇文章就是记录运行环境安装的过程。 安装mysql5.7.44 本来想安装8.0的,直接使用apt安装方便快捷,但是想了想还是使用 ...
本章目标 使用Blazor WebAssembly实现管理“贴纸”页面 集成认证与授权机制 如果你对Blazor WebAssembly的使用不感兴趣,可以跳过本章的阅读。你也可以使用自己熟悉的前端技术完成案例的界面部分,之前我们开发的后端API比较简单,所以自己实现一套前端界面并不会是一个困难的事 ...
众所周知,UWP 使用的窗口模型是 CoreWindow,但是 UWP 本身只是一个应用模型,所以完全可以创建 win32 窗口,那么我们可以不可以创建一个 win32 窗口,然后像 XAML 岛 (XAML Islands) 一样把 XAML 托管上去呢?本篇将讲述如何利用 WAS (Window... ...
依赖注入可以提高代码的可维护性、可测试性、可替换性和可扩展性,降低组件之间的耦合度,使得代码更加清晰和灵活,ASP.NET Core 提供了内置的依赖注入容器,可以帮助我们轻松地将服务注册到容器中 ...
将PDF文件转换为Markdown格式是一个非常实用的需求,尤其是在需要将内容从固定布局的PDF文件中提取出来,并转换为更易于编辑和处理的文本格式时。本文将介绍如何通过C#代码将PDF文档转换Markdown(MD)文档。 需要用到第三方库 Spire.PDF for .NET。可以从以下链接下载产 ...
在现代 Web 应用中,安全认证是确保用户数据和系统安全的重要一环。JSON Web Token (JWT) 是一种流行的认证方式,它可以在客户端和服务端之间安全地传递信息。本文将详细介绍 JWT Bearer 认证的概念、工作原理、在 .NET Core 中的实现步骤,以及最佳实践。 一、什么是 ...
在现代软件开发中,特别是在 .NET 环境中,数据传输对象(DTO)与实体模型之间的映射是一个常见的需求。AutoMapper 是一个强大的库,可以简化这一过程,减少样板代码,提高开发效率。本文将详细讲解 AutoMapper 的基本概念、各种用法以及最佳实践。 什么是 AutoMapper? Au ...
本文将带你深入了解 await 关键字的实现原理,从编译器生成的状态机到回调函数的注册和触发,再到异步方法的生命周期管理。通过详细的代码示例和流程图,我们将逐步解析异步方法的每一个步骤,帮助你更好地理解和优化异步代码。 ...
引言 随着技术的不断进步,微软的.NET 框架在每次迭代中都带来了令人惊喜的新特性。在.NET 9 版本中,一个特别引人注目的亮点是 AOT( Ahead-of-Time)支持,它允许开发人员将应用程序在编译阶段就优化为能够在老旧的 Windows 系统上运行,包括 Windows 7 和甚至 Wi ...
一个进程就是一个程序,一个程序里不止一个功能,每个功能的实现就可以交给一个线程去完成。一个进程就像是一个工程,这个工程里,有设计,有监理,有施工,就相当于三个线程,各干各的又相互配合。 https://cplusplus.com/reference/thread/thread/thread/ 是C+ ...
https://cplusplus.com/reference/ctime/ 先放上官方文档。 ctime类里,有很多转换时间格式的方法,下面只举例将UTC时间,转换为字符串的代码。 Unix时间,也称为POSIX时间,是UNIX或类UNIX系统使用的时间表示方式。它从协调世界时1970年1 ...
在我们团队的开发历程中,C# 和 .NET 框架一直是我们的主力语言,伴随我们走过了无数个项目。当微软推出 Blazor 这一革命性的框架时,我们对其充满了期待。Blazor 以其优良的架构和微软的强大背书,似乎预示着前端开发的新纪元。我们希望借助 Blazor 的优势,构建现代化的前端应用,实现快... ...
在 .NET 4.0 中实现现代异步编程!本文详细介绍 Task组件,提供类似于 .NET 4.5 的 Task.Run() 和 Task.WhenAll() 方法,优化线程池使用,提升代码质量和开发效率 ...