- 博客(274)
- 资源 (8)
- 收藏
- 关注
原创 C#.Net 使用NPOI库导出Excel(含列宽度自适应) 及 根据Excel文件生成DataTable
// 公司名称[Header("公司名称")]set;/// 订单金额(元)[Header("订单金额(元)")]set;/// 订单号[Header("订单号")]set;/// 下单时间[Header("下单时间")]set;………………/// 查询数据并下载成Excel文件[HttpPost]DateTime?DateTime?.WhereIf(!.Start!.End!……,……,……});
2025-06-11 17:52:41
333
转载 nvm(Node版本管理工具)及 nrm(npm注册中心管理工具,方便在不同的 npm 镜像源之间切换)
nrm:NPM Registry Manager,npm 注册中心管理,即 npm 源管理工具,使用它可以快速切换npm源。nvm:Node Version Manager,Node 版本管理工具。可以很方便的安装、切换 Node JS 的版本。它可以方便地在一个系统中安装和管理多个node.js版本。
2025-06-03 15:56:57
18
原创 基于vite构建的vue项目添加路由时注意要利用import.meta.glob映射构建生成后的路径
在Web开发中,尤其是在使用现代前端框架(如Vue、React、Angular等)和模块化构建工具(如Webpack、Vite等)时,经常会遇到动态加载模块或组件的需求。是一个在 JavaScript 中用于动态导入多个模块的语法,而addRoute则是 Vue Router 中的一个方法,用于添加路由规则。我将分别解释这两个概念,并展示如何在项目中结合使用它们。
2025-05-23 17:45:23
436
转载 使用 Plasmo 设置浏览器插件动态 Icon
codebox 是您的智能浏览助手,支持多个主流平台,提供一键复制代码、下载文章、去除烦人弹窗等功能,让您的浏览体验更加流畅自在。
2025-05-15 20:35:24
39
原创 Console Importer浏览器插件的编译 及 制作成.crx浏览器插件的步骤
,发现该插件基于一款名为“Plasmo”的框架开发,专用于开发各浏览器扩展程序的开发。是一个专门开发浏览器扩展程序的框架(将另启一篇介绍)。就像是浏览器插件开发领域的 Next.js。
2025-05-15 19:57:23
873
转载 DataAnnotations in Depth(深度介绍System.ComponentModel.DataAnnotations下用于数据有效性校验的特)
我们知道,在.NET 框架中的命名空间下提供了一套特性,这些特性可以应用于类的属性上,即可在控制器方法或过滤器中利用这些特性以实现数据的验证。这些特性主要用于实体框架(Entity Framework)和 ASP.NET 应用程序中,用以确保数据的有效性、安全性。先来看下以验证特性中长度验证中的占位符信息,当长度验证错误时,由于Display特性的存在,错误提示信息为:【“姓名”长度不能大于4】;
2025-05-14 16:15:05
37
转载 Aspose.Words利用Word模板导出Word文档
表格中循环部分的数据则是由«TableStart:Item»«列名»,«列名»«TableEnd:Item»结束 ,中间部分则只需要«列名»即可。②: 域 中类型选择邮件合并、域名选择MergeField,然后在右边③域名中输入绑定的名称。到此模板建立就完成了。在搜索Aspose.Words 导出Word文档时发现网上的方法都是有头没尾的,有的只有一小段实例,让人看着摸不着头脑。利用Aspose.Words导出Word文档最重要的就是模板的建立。在模板中插入域的方法如下:(office2016版本)
2025-05-12 16:05:45
92
转载 如何在 ASP.NET Core 中实现速率限制
在 ASP.NET Core 中实现速率限制(Rate Limiting)中间件可以帮助你控制客户端对 API 的请求频率,防止滥用和过载。速率限制通常用于保护服务器资源,确保服务的稳定性和可用性。ASP.NET Core 本身并没有内置的速率限制中间件,但你可以通过自定义中间件或使用第三方库来实现速率限制。
2025-04-30 17:48:53
44
转载 RabbitMQ.Client在C#中的应用指南:消息队列实战指南
RabbitMQ.Client为C#开发者提供了强大的消息传递能力。通过本指南,你已经掌握了RabbitMQ的基本使用技巧。根据具体业务场景,灵活运用这些技术,你可以构建高性能、可靠的分布式系统。
2025-04-09 18:06:11
262
转载 JavaScript 导入映射(import map) 及 import.meta介绍
是一个宿主环境创建的可扩展的对象,其所有属性均可写、可配置、可枚举。语法由关键字import、一个点符号和meta标识符组成。因为import是而不是标识符,其并不是而是特殊的表达式语法。元属性在 JavaScript 模块中可用;在模块之外(包括在模块中)使用是语法错误。
2025-04-09 17:03:44
267
原创 ASP.NET中将 PasswordHasher 使用的 PBKDF2 算法替换为更现代的 Scrypt 或 Argon2 算法
.Net实现SCrypt Hash加密_scrypt加密-CSDN博客密钥派生算法介绍 及 PBKDF2(过时)<Bcrypt(开始淘汰)<Scrypt< Argon2(含Argon2d、Argon2i、Argon2id)简介-CSDN博客浅述.Net中的Hash算法(顺带对称、非对称算法)_nthash 算法-CSDN博客 这是 ASP.NET Core Identity 框架中用于安全哈希用户密码的核心方法哈希算法默认使用 PBKDF2(基于密码的密钥派生函数)结合 HMAC-SHA256。此算法通过多
2025-04-08 17:22:17
730
原创 linux命令前nohup 及 尾部&、&&、&>、 2>&1 的作用
参考: https://blog.csdn.net/qq_58158950/article/details/144401941。2 是标准错输误出stderr,一般是输到出屏幕,重定向文到件中后,屏幕就不看到它了。> 或1> 仅正将常信息(非异常信息,非报错信息),重定向输到出指定文件。&>或2>&1 同时将误错信息、普通信息一并定重向输到出指定文件。2> 仅将误错信息重定输向出到定指文件中。【与nohup的配合】【其他符号作用】【&>和 2>&1】
2025-04-04 10:17:05
437
转载 LazySlideCaptcha (基于SkiaSharp)滑动验证码 及前端组件vue3的实现
LazySlideCaptcha是基于.Net Standard 2.1的滑动验证码模块。项目同时提供一个基于vue2的演示前端组件和背景图裁剪工具。从2.0.0起绘图模块由ImageSharp调整为SkiaSharp。【码云地址】【Github地址】图形验证码请移步。在线体验点这里。
2025-04-01 18:27:51
97
1
转载 验证码实现案例:SkiaSharp——.NET强大而灵活的跨平台图形库
SkiaSharp是基于Google的Skia图形库的.NET封装,是一个用于2D图像绘制的开源库,无论桌面应用程序、移动应用还是Web应用,都可以使用。.Net开发人员可以利用这个强大而灵活的跨平台图形库,来实现高质量的图形绘制和渲染。02。
2025-04-01 17:59:34
63
原创 SQL Server Floor向下取整后与浮点数进行计算时可能存在的异常计算结果
以下是在SQL Server 2014中的查询(其中ta.WorkHourSum是decimal(19,2)类型字段的月度工时合计值, te.wdays是月工度天数),计算日均工时数后,通过Floor向下取整,发现。,结果竟然不是得到预期正确的浮点数,而是得到一个四舍五入的整型结果(so tricky!),想要如预期得到浮点型的预期计算结果,需要。进行计算,才能得到预期的浮点型的计算结果(尽管下例中最终的精度是只剩一个小数位)。时要注意有这个坑要避!
2025-03-17 13:23:29
159
转载 SSE(Server-Sent Events)及JS 的 EventSource、 text/event-stream MIME 类型介绍
服务器推送事件,简称 SSE,是一种服务端实时主动向浏览器推送消息的技术。服务端与浏览器端的通信协议(HTTP协议)浏览器端可供 JavaScript 使用的对象。从“服务端主动向浏览器实时推送消息”这一点来看,该 API 与 WebSockets API 有一些相似之处。基于HTTP 协议基于TCP 协议单工,只能服务端单向发送消息全双工,可以同时发送和接收消息轻量级,使用简单相对复杂内置断线重连和消息追踪的功能不在协议范围内,需手动实现。
2025-03-06 19:07:33
344
转载 Java与C#语法对比及转换
Also see .JavaCommentsC#line */line */JavaData TypesC#booleanbytecharObjectStringy = "456";x = z;boolcharobjectstringy = "456";x = z;JavaConstantsC#Java。
2025-02-08 10:56:50
62
原创 一个方法被多个线程同时调用,确保同样参数的调用只能有一个线程执行,不同参数的调用则可以多个线程同时执行
比如场景:在数据库某表没有唯一约束的情况下,有可能前端请求和程序定时服务同时执行写入操作,这时写入操作在不同的线程中执行,虽然写入之前作了判断记录是否已存在的操作,但可能两个线程同时执行都判断了记录不存在,因此都执行了写入操作,就造成了记录重复的可能。写一个调用管理类“MultiInvokeManager”,通过该类来控制这种相同参数同时调用的可能性。
2025-01-16 17:41:28
290
原创 Vue 404页面增加宝贝回家公益广告
页面长提示,客户端语言为中文默认为“该页面找不到或已被删除”,其他为“The page was not found”;:你可以加入javascript代码函数,用于如修改页面元素等,会在页面加载完成后立即执行;-- 原来图片缺失,这里替换为公益广告(20241220) -->: 页面短提示,客户端语言为中文默认为“错误提示”,其他为“Oops!: 自动跳转时间,单位秒,-1为手动点击跳转;:自动跳转目标网址,默认 / 网站首页;:加载资源域名,递增可能有其他样式;body {/*页面整体背景*/
2024-12-20 20:37:23
1018
原创 【前端的分片执行】相关api方法
2. 浏览器一帧(正常浏览器一帧渲染为16.6亳秒)内有空闲时间时的回调执行requestIdleCallback((Idle)=>{
2024-12-14 00:01:11
138
转载 【分布式事务框架CAP】 使用 CAP 构建事件总线
了解如何使用 CAP 构建微服务事件总线架构,相对于直接集成消息队列,异步消息传递最强大的优势之一是可靠性,系统的一个部分中的故障不会传播,也不会导致整个系统崩溃。 在 CAP 内部会将消息进行存储,以保证消息的可靠性,并配合重试等策略以达到各个服务之间的数据最终一致性。
2024-11-15 19:19:36
168
原创 document.domain 解决跨子域的javascript脚本安全问题
是一个用于设置当前文档的域名的属性,通常用于解决跨子域的脚本安全问题。(不过document.domain属性已在标准中弃用,不再推荐)如果两个网页的 document.domain 设置为相同的域名,它们就能够彼此访问对方的JavaScript对象。的问题,不能用于完全的跨域操作。如果你需要跨域请求资源,你需要使用其他方法,如 JSONP、CORS 等。,而你想要允许该网页访问同一顶级域名下的其他子域的页面,你可以这样设置。的JavaScript对象了。例如,如果你的网页地址是。
2024-11-05 11:01:06
238
转载 图解flex布局
如果所有项目的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他项多一倍。网上关于flex讲的可算是天花乱堆,我的评论是不用那么多,真要想好好看直接看阮一峰大佬的,工作实战用的就那么回事,我主要从实战角度说下flex常用的有哪些属性。flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
2024-10-31 19:42:08
211
原创 await前后线程切换改变,AsyncLocal<T>比ThreadLocal<T> 更适合多线程变量隔离的场景
1. await前后线程发生切换,不一定保留在原线程中执行;2. AsyncLocal<T> 比 ThreadLocal<T> 更适合多数多线程变量隔离的场景。
2024-10-29 01:18:51
366
转载 .NET 轻量化定时任务调度 FreeScheduler
FreeScheduler官方介绍:ZhonTai项目框架之任务调度:.NET 定时任务 FreeScheduler 支持 cron、持久化、可变定时设置 - FreeSql:前言在平时项目开发中,定时任务调度是一项重要的功能,广泛应用于后台作业、计划任务和自动化脚本等模块。FreeScheduler 是一款轻量级且功能强大的定时任务调度库,它支持临时的延时任务和重复循环任务(可持久化),能够按秒、每天/每周/每月固定时间或自定义间隔执行(CRON 表达式)。
2024-10-28 19:30:16
155
转载 .NET Core 中正确使用 HttpClient 的姿势(这里不使用RestSharp、Flurl 等第三方库)
类型化的方式和命名式的方式相比,虽然在配置的时候会麻烦一点,但它有两个好处:一是不用通过名称字符串来获得 Client,而是直接通过依赖注入获得具体的 Client;命名式的使用方式可以解决第一种方式的问题,对于特定域名的 HTTP 调用,可以只做一次配置,然后在多个地方通过名称拿到相同的 Client 来使用。类型化的使用方式可以预先把配置放到自定义的 HttpClient 中,然后在需要的地方都过依赖注入直接拿到 HttpClient 实例。,一次是没有命名的,一次是有命名的。就是额外扩展的共用方法。
2024-10-28 17:32:57
233
原创 如何在 .NET中使用Flurl高效处理Http请求(类似的工具还有RestSharp等)
官方介绍,Flurl是一个现代的,流利的,支持异步的,可测试的,可移植的,URL增强和Http客户端组件。
2024-10-25 22:21:40
1161
原创 判断浏览器环境,前端打开微信浏览器
我们知道微信浏览器有自带针对微信的组件(比如:微信JSAPI支付使用的WeixinJSBridge),那么,有办法在普通浏览器中打开微信浏览器并跳转页面吗?(似乎微信已禁用外部浏览器调用的普通页面直接跳转,只能通过“weixin://前缀”链接单纯打开微信app)
2024-10-23 18:40:41
527
转载 HMAC-SHA256和RSA-SHA256签名有什么区别?
是一种基于共享密钥的消息认证码,计算速度快,适用于验证数据的完整性和身份认证。RSA-SHA256是一种基于非对称加密的数字签名方案,适用于验证发送方的身份,提供更强的安全性。在实际应用中,您可能需要根据具体需求和场景选择合适的签名算法。
2024-10-22 09:42:58
231
原创 EF如何确保每次都实时查数据库中数据、EF更新如何做到只更新部分或全部字段、EF恢复实体初始值、及 “EF Core 中多次查询实体数据,DbContext跟踪实体的情况(不会每次都从数据库查询)”
在Entity Framework (EF) 中,默认情况下,当你使用 “db.Set().Find(id)【返回实体】” 或 “db.Set().Where(condition)【返回IQueryable,再FirstOrDefault()获取实体】” 方法查询实体时,如果DBContext上下文中已经存在相应的实体,它将返回缓存中的实体,而不会去数据库中查询。但如果你需要确保每次都从数据库中查询,不使用缓存,你可以使用NoTracking查询
2024-10-15 19:13:10
1317
转载 dotNet符号文件(pdb),符号包(snupkg)和SourceLink
本文的主题是调试NuGet包,以及符号包的概念,如何去发布一个NuGet包,让我们的NuGet包支持SouceLink,这些都是我们开发中比较容易忽视的内容,但是熟悉了以后可以让我们在调试中得心应手,也是开源项目开发的基础篇。demo 源代码在文末本文介绍了在中调试NuGet包的相关概念,包括PDB符号文件、符号包、功能以及发布支持的NuGet包。通过配置符号包和,开发者可以更轻松地调试外部依赖项的源代码,提高调试效率。PDB。
2024-10-12 11:16:19
128
原创 Vue3使用通信组件库mitt作为事件总线实现跨组件通信
Mitt 是一个在 Vue.js 应用程序中使用的小型事件总线库。该库允许组件进行通信,而不必过度依赖父级或子级组件之间的 props。事件总线(Event Bus)可以理解为一个全局的发布/订阅模式,可以通过它来实现不同组件之间的消息传递。在Vue实例或Vue组件中充当一个中央枢纽,通过它可以让一个组件发出事件,而其他组件监听并响应这些事件。
2024-09-23 11:36:26
1313
转载 ASP.NET Core (.NET 7) 中的速率限制(限流)中间件
ASP.NET Core 中的速率限制中间件可以用于限制特定资源在一段时间内允许的请求次数。Microsoft.AspNetCore.RateLimiting 或 AspNetCoreRateLimit 中间件提供速率限制中间件。应用可配置速率限制策略,然后将策略附加到终结点。
2024-09-14 16:19:08
233
原创 ASP.NET Core WebAPI中的分析工具MiniProfiler
默认的index.html页面可以从如下链接下载下载之后将这个文件放置到项目根目录下。最后我们需要配置这个index.html文件的Bulid Action为Embedded resource在Startup.cs文件中,我们需要修改中间件的配置,这里我们需要添加一个配置。});注意:这里是项目的命名空间名本篇博客描述了如何使用来监控分析你的Api。除了提供网页显示报告,还支持将报告结果存储在数据库中,后面我会补充一篇文章来说明如何将报告保存到数据库中。
2024-09-14 15:59:27
1150
转载 Castle DynamicProxy基本用法(AOP)
本文介绍AOP编程的基本概念、Castle DynamicProxy(DP)的基本用法,使用第三方扩展实现对异步(async)的支持,结合Autofac演示如何实现AOP编程。
2024-09-12 19:22:11
321
2
aws-schema-conversion-tool-1.0.latest.zip
2020-11-23
EntLibContrib.Data.PostgreSql.dll
2020-05-13
Npgsql.vsix (Fixed)
2020-04-17
更新CustomPromise.js
2020-09-21
CustomPromise.js
2020-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人