.NET 用Visual Studio还是Visual Studio Code(VSCode)开发更方便?

目前的.NET开发中,Visual Studio和Visual Studio Code(以下简称VS Code)是两款主流的开发工具。它们在功能、性能以及插件扩展等方面存在明显的区别。

2024-05-26 162 0 .NET Visual Studio Visual Studio Code VSCode 开发

.NET Winform高分辨率系统下界面混乱问题

最近换了新电脑,分辨率很高,结果发现原来的winform应用程序在高分辨率下界面控件错位混乱了。.NET Winform 应用程序在高分辨率系统下界面混乱,通常是由于 字体单位 和 DPI 设置 不一致导致的。为了解决 .NET Winform 应用程序在高分辨率系统下界面混乱的问题,可以采取以下两种方法。

2024-05-23 158 0 .NET Winform 高分辨率 界面混乱

.NET9 Pre4 UnsafeAccessor泛型用法

.NET9 PreView4 CLR里面添加了对于UnsafeAccessorAttribute特性泛型的支持。而对于UnsafeAccessorAttribute本身的支持则在.NET8里面。本篇看下Pre4里面的这个特性用法以及原理。

2024-05-23 151 0 .NET9 .NET UnsafeAccessor 泛型

.NET C# 开发常用的10种设计模式

设计模式是软件设计中出现的常见问题的可重用解决方案。它们是用于解决设计问题的模板,这些设计问题已被证明在各种情况下都是有效的。它们为开发人员提供了通用词汇和对最佳实践的共同理解,使他们更容易就复杂的设计问题进行沟通和协作。

2024-05-22 208 0 .NET C# 设计模式

C#使用 AutoMapper 对象映射库快速入门使用教程

AutoMapper 是一个对象到对象映射的库,它可以简化.NET应用程序中的数据传输对象(DTOs)和领域模型之间的转换。以下是AutoMapper的快速入门指南。首先,你需要通过NuGet包管理器安装AutoMapper。要使用AutoMapper,你需要创建一个映射配置。这通常在应用程序的启动过程中完成。

2024-05-21 173 0 C# AutoMapper 映射库 教程

Quartz .NET的Job类中使用构造函数依赖注入

Quartz .NET是一个功能强大的作业调度库,用于在.NET应用程序中执行定时任务和后台处理工作。使用.NET C#开发Windows服务时,可以使用Quartz .NET定时执行任务。实际运行时发现任务没有被触发,而且也没有任何报错信息。换了一个没有构造函数的Job类后发现可以正常触发,说明是因为Quartz.NET创建Job时不支持构造函数依赖注入。

2024-05-21 362 1 Quartz .NET Job 构造函数 依赖注入

.NET InvalidOperationException: Cannot consume scoped service from singleton

在.NET windows服务里注入DBContext时会报错:.NET InvalidOperationException: Cannot consume scoped service from singleton。

2024-05-20 181 0 .NET InvalidOperationException scoped singleton

.NET8 创建和部署windows服务图文教程

本文记录了使用Visual studio2022创建windows服务,并且安装windows服务设置为自动启动的步骤。

2024-05-20 231 0 .NET .NET8 windows服务 图文教程

C#使用视觉检测库Halcon识别图片里的数字

近年来,随着计算机视觉技术的不断发展和应用,数字识别已经成为了计算机视觉领域中的一个重要分支。而在数字识别中,Halcon视觉交互是一种常用的方法。本文将介绍如何使用C#和Halcon实现数字识别的交互。

2024-05-17 203 0 C# Halcon 视觉检测

使用C#读取USB HID设备的代码示例

在C#中,读取USB设备通常涉及到使用Windows的API,如SetupAPI和HidAPI。以下是一个基于HidAPI的示例,用于读取USB HID设备。对于非HID类的USB设备,您可能需要使用其他API,如SetupAPI。

2024-05-16 220 0 C# USB HID 代码示例

.NET Core里UseStatusCodePagesWithReExecute和UseStatusCodePagesWithRedirects的区别

UseStatusCodePagesWithReExecute 和 UseStatusCodePagesWithRedirects 都是 ASP.NET Core 中用于处理状态码页面的中间件。 它们都允许你自定义应用程序对特定状态码的响应,例如 404 未找到错误或 500 内部服务器错误。

2024-05-16 176 0 .NET .NET Core UseStatusCodePagesWithReExecute UseStatusCodePagesWithRedirects

C#中FieldOffset特性的应用示例

在C#编程中,FieldOffsetAttribute特性是一种非常有用的工具,可以帮助开发人员精确地控制字段在内存中的偏移量,以及对齐方式。这个特性的主要作用是为了优化内存布局,提高程序的效率和准确性。

2024-05-15 194 0 C# FieldOffset

将 .NET Core 应用程序发布为 Windows 服务

确保项目是一个 Worker Service 项目,这是.NET Core 及以后版本推荐用于后台服务的方式。在 Worker Service 项目中,需要使用Microsoft.Extensions.Hosting.WindowsServices包来支持作为 Windows 服务运行。

2024-05-15 313 0 .NET .NET Core Windows 服务

.NET WebApi全局修改返回的时间格式

在 .NET WebApi 中,你可以通过以下两种方式全局修改返回的时间格式:1. 使用 Newtonsoft.Json 配置 2. 使用自定义格式化器。如果同时使用 Newtonsoft.Json 配置和自定义格式化器,则自定义格式化器将优先于配置。

2024-05-13 318 0 .NET WebApi 时间格式

在.NET Core应用程序中使用Polly实现重试模式

本文探讨如何在 .NET Core 应用程序中使用 Polly(一个 .NET 弹性和暂时性故障处理库)实现重试模式。它将深入探讨 Retry 模式及其优点、Polly 简介以及其实现的详细演练。了解重试模式重试模式是一种容错机制,它通过重新执行指定次数的失败操作来帮助处理暂时性故障。

2024-05-10 277 0 .NET .NET Core Polly 重试

C# Thread.Sleep与Task.Delay的区别

Thread.Sleep和Task.Delay都是.NET中用于暂停线程执行的方法。那两者有什么区别呢?从执行结果可以看出,Task.Delay的线程是重复利用的,而Thread.Sleep的线程是新建的。因为Thread.Sleep是同步方法,它会阻塞当前线程(线程一直被占用),直到时间到了才会继续执行。

2024-05-10 175 0 C# Thread.Sleep Task.Delay

.NET Core MVC读取和修改appsettings.json配置文件

在 ASP.NET Core MVC 中,读取和修改 appsettings.json 配置文件是一个常见的操作。示例代码中,使用IWebHostEnvironment可以获取站点根目录,然后读取appsettings.json的值。修改string内容后再使用StreamWriter保存appsettings.json的内容。

2024-05-10 208 0 .NET .NET Core MVC appsettings.json 配置文件

ASP.NET Core 8 MVC在program.cs里设置允许跨域

在 ASP.NET Core 8 中,你可以通过在 Program.cs 文件中配置 app.UseCors 中间件来设置允许跨域(CORS)。在这个示例中,我们定义了一个名为 MyPolicy 的 CORS 策略,该策略允许来自任何来源的请求,使用任何 HTTP 方法和任何头。

2024-05-09 238 0 .NET .NET8 MVC program.cs 跨域

报错 Could not load file or assembly 'SlimDX.dll' or one of itsdependencles.

最近在做CrystalMir2传奇2项目,换了一台电脑安装了.NET8。运行客户端后没有反应,查看系统日志发现有报错:Description: The process was terminated due to an unhandled exception. Exception Info: System.IO.FileNotFoundException: Could not load file or assembly 'D:\GitHub\CrystalMir2-CN\Build\Client\Release\publish\SlimDX.dll'. 找不到指定的模块。

2024-05-01 269 0 SlimDX.dll

.NET8 C#12 使用主构造函数重构代码

C# 12 作为 .NET 8 的一部分引入了一组引人注目的新功能!在这篇文章中,我们将探讨其中一个功能,特别是主要构造函数,解释其用法和相关性。然后,我们将演示一个示例重构,以展示如何将其应用到您的代码中,并讨论其好处和潜在的缺陷。这将帮助您了解更改的影响并帮助影响您对该功能的采用。

2024-04-30 394 0 C# C#12 主构造函数 重构代码 .NET

顶部