首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
在 .NET 中使用 JsReport 将 HTML 转换为 PDF
在这篇文章中,我将展示如何使用 JsReport 将 HTML 代码转换为 PDF,JsReport 是一个基于 JavaScript 的报告库,可以轻松集成到 .NET 项目中。JsReport 支持使用动态数据和功能(如图形、表格和图像)从 HTML、CSS 和 JavaScript 模板创建自定义报告。先决条件Visual St...
4-27 8:53
24
为什么在 .NET 中推荐使用 HttpClientFactory替代HttpClient
在 .NET 开发中,了解如何发出高效、可靠且可伸缩的 Web 请求至关重要。该领域的两个主要参与者是 和 。虽然两者都用于发送 HTTP 请求和接收 HTTP 响应,但有一个令人信服的理由比传统的 .本文旨在用简单的英语揭开这些选项的神秘面纱,强调直接使用的陷阱,并说明为什...
4-27 8:51
65
避免这些C#错误,构建高性能应用
你有没有觉得你的 .NET 应用程序正在以蜗牛的速度移动?如果你的第一反应是“是”,别担心,你并不孤单。您可能会遭受一些伪装成看似合乎逻辑的方法的不良做法的后果。以下是一些可能导致应用程序性能不佳的常见错误。但是,如果我们不知道如何修复或避免错误,那么知道...
4-27 8:48
33
.NET 中的服务生命周期
今天,我们将深入探讨 .NET Core 依赖项注入 (DI) 框架中的服务生存期,这对于构建可靠且高效的应用程序至关重要。服务的创建、共享和处置方式会影响应用程序中资源的性能和管理。了解服务生命周期在我们开始卷起袖子深入研究一些真实示例之前,我们应该首先澄清一些...
4-19 14:48
37
C# 中的动态代码生成和编译:构建脚本引擎
动态代码生成和编译可以为您的 C# 应用程序开辟一个充满可能性的世界。在本教程中,我们将探讨如何使用 Reflection、Emit 和 Roslyn 在运行时生成和编译代码。我们还将向您展示如何创建可以动态执行 C# 代码的小型脚本引擎。在此过程中,我们将讨论重要的安全注意事项和...
4-19 14:13
31
C#中的拦截器与AOP
.NET 8 引入了一个名为 Interceptors 的新功能,这是一个实验性概念,允许我们以一种非常有趣的方式重写现有代码。using System;using System.Runtime.CompilerServices;var c = new C();c.InterceptableMethod(1); // (L1,C1): prints interceptor 1c.InterceptableMet...
4-19 14:32
49
.NET 9 即将推出的功能:Task.WhenEach`
.NET 爱好者!我刚刚偶然发现了一个非常酷的新 PR,它被合并到 .NET 运行时存储库中,我想分享一个例子。希望您能为新的 .NET 版本大肆宣传!在即将到来的 .NET 9 版本中,我们预计会有一个名为 .它在这里让您的异步编码冒险比以往任何时候都更流畅、更干净!Task.WhenE...
4-19 14:8
70
如何在 ASP.NET Core 中实现中间件管道
借助 ASP.NET Core,中间件流水线可以作为一种轻量级、灵活的机制,使开发人员能够在请求流水线的不同阶段插入功能。这些中间件组件可以执行各种任务,例如日志记录、身份验证、授权、异常处理等。它们提供了一种封装和组织代码的方法,促进了更简洁、更易于维护的应用...
4-18 8:1
43
.NET 8 中的集成测试实例讲解
我软件工程中的集成测试检查程序的不同部分是否很好地协同工作。它确保当一段代码与另一段代码交谈时,它们相互理解并正确共享信息。通过这样做,它有助于及早发现和解决问题,使软件更好、更可靠。集成测试就像确保机器中的所有齿轮都能顺利地组装在一起,因此整个过程...
4-18 8:8
45
C#中EFCore的并发处理实例讲解
在EF Core 中,并发处理是框架管理多个用户或进程尝试同时更改相同数据的情况的方式。它主要通过乐观并发控制来实现这一点,该控制检测数据自上次访问以来是否发生了变化。 如果检测到更改,EF Core 将引发冲突。然后,开发人员可以决定如何处理冲突,例如合并更改或通...
4-18 8:28
25
<<
<
…
24
25
26
27
28
29
30
31
32
33
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
1038
C#异步定时器:精准定期执行...
1107
WPF应用中融入ASP.NET Core...
700
解决WPF界面卡死等待问题:...
1757
WPF中轻松生成动态图表:实...
590
C#屏幕截图:轻松捕获活动窗...
572
串口通信利器:RJCP.DLL.Ser...
561
C#串口通讯实战:基础功能及...
537
延迟等待的艺术:C#中Task.D...
390
C#中轻松实现二维码和条形码...
363
FluentFTP实战:轻松操控FTP...
400
.NET —ToList 和 ToArray ...
261
掌握ImageSharp:图像处理的...
378
解密C# Socket通信:克服粘...
372
WPF开发新境界:MVVM设计模...
376
WPF中轻松操控GIF动画:WpfA...
368
C# 中的并发性:使用 Blocki...
233
C#中Task.Run怎么用?能解决...
329
实现WPF多语言支持:简单灵...
328
还在到处加异常日志记录?试...
324
在C# .NET 8中使用MediatR实...
194
轻松实现.NET应用自动更新:...
316
打造真实感十足的速度表盘:...
313
ASP.NET 后端开发:全面的路...
186
.net中OpenCVSharp+Zxing读...
308
.net中连接数据库太麻烦?试...
308
.NET 性能分析:.NET 8 中的...
184
C#文件编码检测:轻松解析文...
195
.NET配置文件大揭秘:轻松读...
301
C# Socket通信:灵活传输DTO...
298
.NET 9中ToList 和 ToArray ...
174
深入理解WPF中的Dispatcher...
281
Microsoft.Extensions.Loggi...
187
优化代码性能:C#中轻松测量...
276
WPF大展示专业指南:轻松实...
386
C#语言中从Switch语句转换到...
152
WPF魔法:轻松实现依赖注入...
1378
C# Switch 语句进阶:模式匹...
268
.NET Core 中集成Dapper高级...
145
MediatR让进程内通信如此简...
1364
.net下优秀的日志框架Serilo...
1386
C# 中的弱事件 — 如何避免...
141
.net中通过定时任务框架Quar...
257
C# .NET 8 — 创建具有分布...
134
.net 下优秀的DI框架推荐,...
248
掌握System.Text.Json中的多...
246
C#实例方法和静态方法有区别...
255
探索深度克隆的极致:C#开源...
245
.net中各种加解密用这一个库...
242
改一个对象类型,for循环耗...
242