上传附件判断word、excel、txt等文档中是否含有敏感词如身份证号,手机号等,其它检测如PDF,图片(OCR)等可以自行扩展。 互联网项目中,展示的数据中不能包含个人信息等敏感信息。判断word中是否包含手机号,word正文中是否包含身份证号等敏感信息,通过正则表达式判断匹配手机号,身份证号, ...
单一职责原则(Single Responsibility Principle, SRP)是面向对象编程和设计的五大SOLID原则之一。它强调一个类、方法或模块应该只有一个职责,即只做一件事情。如果一个类承担的职责过多,那么它的可维护性、可读性和可扩展性都会受到影响。当需要修改类的某个职责时,可能会影 ...
由于同一台电脑可以安装多个版本的.NET Core SDK。 当安装了许多不同版本的.NET Core SDK 之后,要如何才能使用旧版dotnet 命令,执行dotnet new 或dotnet build 之类的命令? 这部分其实并不困难,只要设定global.json 即可。 首先要查询目前电 ...
概述:在WPF中,Command是一种优秀的机制,通过它,我们能够将用户界面操作与业务逻辑分离,提高代码的可维护性和可重用性。通过自定义ICommand接口的实现(如RelayCommand),我们能够轻松创建并在XAML中绑定命令,实现清晰的MVVM架构。这种模式使得应用程序的开发更加灵活,同时提 ...
概述:通过AutoUpdater.NET,你可以轻松实现.NET应用程序的自动更新。首先,引入AutoUpdater.NET库,然后在应用程序中集成并设置更新源。创建服务器上的XML文件以存储更新信息。最后,在应用程序中处理AutoUpdater.NET的事件,实现更新检查和安装逻辑。这个库简化了更 ...
.NET Framework 和 .NET Core 2.0 及更低版本中由 HttpClient 使用的默认消息处理程序为HttpClientHandler。 从 .NET Core 2.1 开始,类SocketsHttpHandler提供了更高级别的 HTTP 网络类(例如HttpClient ...
1、KingBaseES 人大金仓数据库 是多数据库、多模式。2、public 为默认模式,因此,默认情况下,我们可以在 public 模式下新建表即可。总的来说,使用 CYQ.Data 框架操作 KingBaseES 数据库可以简化开发流程,提高开发效率,同时也增强了系统的稳定性和安全性 ...
RPC(Remote Procedure Call)远程过程调用,是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议,简单的理解是一个节点请求另一个节点提供的服务。RPC只是一套协议,基于这套协议规范来实现的框架都可以称为 RPC 框架,比较典型的有 Dubbo、Thrift ... ...
一、多播委托的应用--观察者模式 遇到一个开发的问题? 面试者:以面向对象的思想实现一下的场景: 猫:Miao一声,紧接着引发了一系列的行为~ Miao:引发了一系列的动作; 从代码层面来说:代码这样写好吗? 猫职责不单一(猫就是猫,他的行为只有Miao一声) 依赖太重,依赖了很多的普通类; 被依赖 ...
一、介绍 这是我的《Advanced .Net Debugging》这个系列的第四篇文章。今天这篇文章的标题虽然叫做“基本调试任务”,但是这章的内容还是挺多的。由于内容太多,故原书的第三章内容我分两篇文章来写。上一篇我们了解了一些调试技巧,比如:单步调试、下断点、过程调试等,这篇文章主要涉及的内容是 ...
引言 本片文章分享一下之前遇到的WPF应用在触摸屏下使用时的两个问题。 场景 具体场景就是一个配置界面, ScrollViewer 中包含一个StackPanel 然后纵向堆叠,已滚动的方式查看,然后包含多个 TextBlock 、 TextBox 以及DataGrid ,期间遇到了两个问题: WP ...
前言 在.NET中,连接池被广泛用于管理和优化不同类型资源的连接。连接池可以减少建立和关闭连接所需的时间和资源消耗,从而提高了应用程序的性能和响应能力。 HttpClient中的连接池 System.Net.Http.HttpClient 类用于发送 HTTP 请求以及从 URI 所标识的资源接收 ...
概述:本教程使用OpenCvSharp和ZXing库,详细介绍了在C#中识别二维码和条形码的步骤。通过导入必要的命名空间、加载图像,并使用ZXing库进行二维码和条形码的识别,提供了清晰的示例代码。这方便了开发人员在项目中集成二维码和条形码识别功能。 要使用OpenCvSharp来分别识别二维码和条 ...
概述:Quartz.NET是一个强大的任务调度库,支持通过配置文件灵活配置任务和触发器。配置文件中定义了调度器、线程池、作业和触发器的相关信息。默认情况下,Quartz.NET在应用程序根目录查找名为 quartz.config 的配置文件。若配置文件位于其他路径或具有不同名称,可以通过传递 Nam ...
数据分页,几乎是任何应用系统的必备功能。但当数据量较大时,分页操作的效率就会变得很低。大数据量分页时,一个操作耗时5秒、10秒、甚至更长时间都是有可能的,但这在用户使用的角度是不可接受的…… 数据分页往往有三种常用方案。 第一种,把数据库中存放的相关数据,全部读入代码/内存,再由代码对其进行分页操作 ...
经过大概三个月的学习和沉淀,我将.NET8.0的学习和使用,整理成了一个简单的微服务项目,目前还在初级阶段,后续会进行持续的更新和优化。 ...
概述:Protobuf-net是C#中高效的二进制序列化工具,以紧凑、跨语言支持和卓越性能著称。通过定义消息类型、序列化和反序列化实现数据传输,并可适用于Web接口。前端可使用protobuf.js库解析Protobuf格式数据。 Protobuf-net 在 C# 中的编码结构及使用方法 优点 P ...
概述:RJCP.DLL.SerialPortStream库为C#串口通信提供强大支持,跨平台、高度可定制,集成基础功能如打开、配置串口和数据读写,以及高级功能包括事件处理、超时设置等,极大简化串口开发流程,适用于不同平台和复杂通信需求。 C#串口开发之RJCP.DLL.SerialPortStrea ...
.NET Core WebAPI项目部署iis后Swagger 404问题解决 前言 之前做了一个WebAPI的项目,我在文章中写到的是Docker方式部署,然后考虑到很多初学者用的是iis,下面讲解下iis如何部署WebAPI项目。 环境准备 iis ASPNETCoreModuleV2 重点 . ...
CYQ.Data 是一个用于操作数据库的框架,可以方便地连接和管理各种类型的数据库。在操作达梦数据库时,使用 CYQ.Data 框架可以提供以下功能和优势......总的来说,使用 CYQ.Data 框架操作达梦数据库可以简化开发流程,提高开发效率,同时也增强了系统的稳定性和安全性。 ...