- 2025-01-06.NET Core GC对象 分配(GC Alloc)底层原理浅谈
对象分配策略.NET程序的对象是由CLR控制并分配在托管堆中,如果是你,会如何设计一个内存分配策略呢?按需分配,要多少分配多少,移动alloc_ptr指针即可,没有任何浪费。缺点是每次都要向OS申请内存,效率低预留缓冲区,降低了向OS申请内存的频次。但在多线程情况下,alloc_ptr锁竞争会非常
- 2025-01-05SpringBoot项目启动报错java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
问题今天启动业余学习项目里的某服务A发现启动失败,报错信息如下:[ERROR][2025-01-0515:41:26,083][main]com.cdfive.springboot.startup.ApplicationStartupExceptionReporter[30]-error=>java.lang.ArrayStoreException:sun.reflect.annotation.TypeNotPresentExcepti
- 2025-01-05如何看.net framework和.net core?
了解.NETFramework和.NETCore的区别对于选择合适的技术栈和开发环境至关重要。以下是这两者的详细比较,包括它们的特点、适用场景、性能差异以及如何选择合适的框架。.NETFramework.NETFramework是Microsoft开发的第一个.NET平台,主要用于Windows操作系统上的应用
- 2025-01-05C/C++调试---调试符号与调试器
调试符号与调试器调试符号调试符号由编译器生成,与相关的机器代码、全局数据对象等一同产生。链接器会收集并组织这些符号,将他们写入可执行文件的调试部分,或存储到一个单独文件中。概览全局函数和变量源文件和行信息为了优化程序性能,编译器可能会对源代码进行位移,情
- 2025-01-05EF和EFCore的区别,性能上有哪些区别,哪个性能高?如何优化EF/EFCore 的性能?
EntityFramework(EF)和EntityFrameworkCore(EFCore)是Microsoft提供的两种对象关系映射(ORM)框架,用于在.NET应用程序中与关系型数据库进行交互。虽然它们在功能和使用方式上有很多相似之处,但也存在一些重要的区别。以下是EF和EFCore的详细比较,包括性能上的区别、
- 2025-01-05在 ASP.NET CORE 中上传、下载文件
创建WebAPI来提供跨客户端和服务器的文件上传和下载是常有的事。本文将介绍如何通过ASP.NETCORE来实现。首先在VisualStudio中创建空的WebAPI项目,然后选择目标框架.NetCore3.1。创建名为FileController的控制器,提供操作文件的接口。namespaceFileAPI.Con
- 2025-01-04在 Blazor 和 ASP.NET Core 中使用依赖注入和Scoped 服务实现数据共享方法详解
依赖注入(DependencyInjection,简称DI)是一种设计模式,用于将对象的依赖关系从对象内部解耦出来,由外部容器进行管理和提供。在Blazor和ASP.NETCore中,DI是内置的核心功能,它通过服务生命周期(Transient、Scoped、Singleton)来管理依赖项。依赖注入(DependencyInj
- 2025-01-03.NET Core + Kafka 开发指南
什么是KafkaApacheKafka是一个分布式流处理平台,由LinkedIn开发并开源,后来成为Apache软件基金会的顶级项目。Kafka主要用于构建实时数据管道和流式应用程序。Kafka架构从下面3张架构图中可以看出KafkaServer实际扮演的是Broker的角色,一个KafkaCluster由多个Broker组成,
- 2025-01-02.Net Core 管道底层源码实现
在.NETCore中,请求处理管道是一个中间件(Middleware)链,用于处理HTTP请求并生成响应。管道的底层实现基于Microsoft.AspNetCore.Http命名空间中的一些核心类和接口1.核心组件1.1HttpContext•HttpContext是HTTP请求和响应的核心抽象,封装了请求信息(如请求头、请求体
- 2025-01-02在 ASP.NET Core WebAPI如何实现版本控制?
在ASP.NETCoreWebAPI中实现版本控制(Versioning)是一种常见的做法,用于管理API的演进和兼容性。通过版本控制,我们可以在不破坏现有客户端的情况下引入新功能或修改现有功能。以下是实现版本控制的几种常见方法:1.使用URL路径版本控制将版本号嵌入到URL路径中,例如/api/v
- 2025-01-02初学者必知的微软.NET6开发环境相关技术介绍
原文链接:https://blog.csdn.net/wang2015cn/article/details/135619869 .NET是一个开发平台,或者叫开发者平台。使用.NET你可以创建不同类型的应用程序,使用多种开发语言、编辑器和工具库创建网页、手机、桌面以及AI等应用。其核心特点是:跨平台。就.NET的发展来说,2016年是一
- 2025-01-02asp.net core 9.0发布centos7.9
一:项目名称:Net9API发布设置:设置为Linux-64,独立部署:将发布后的文件拷贝到centos制定文件夹,然后运行:./Net9API报错:./Net9API:/lib64/libstdc++.so.6:version`GLIBCXX_3.4.20'notfound(requiredby./Net9API)./Net9API:/lib64/libstdc++.so.6:version`GLIBCXX_
- 2025-01-01hutool的一个奇怪现象,main ERROR Log4j2 could not find a logging implementation. Please add log4j-core to th
hutool有一个强大的功能,一行代码实现增删改查。在src/main/resources目录增加一个db.settings配置文件:url=jdbc:mysql://localhost:3306/ujcms?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=trueuser=rootpass=root##
- 2024-12-31.NET Core技术研究-HttpContext访问的正确方式
将ASP.NET升级到ASP.NETCore之后,相信大家都会遇到HttpContext.Current无法使用的问题。这也是我们迁移ASP.NETCore必须解决的问题。先列一下使用HttpContext的具体场景:1.在Controller层访问HttpContext2.在中间件中使用HttpContext3.在数据访问层使用HttpContext4.在后
- 2024-12-31ASP.NET Core技术研究-探秘依赖注入框架
ASP.NETCore在底层内置了一个依赖注入框架,通过依赖注入的方式注册服务、提供服务。依赖注入不仅服务于ASP.NETCore自身,同时也是应用程序的服务提供者。毫不夸张的说,ASP.NETCore通过依赖注入实现了各种服务对象的注册和创建,同时也实现了面向抽象的编程模式和编程体验,提升了应用
- 2024-12-31.NET Core 注入依赖
.NETCore是一个现代化的、跨平台的框架,提供了构建高性能和可扩展应用程序的工具。依赖注入(DependencyInjection,DI)和中间件(Middleware)是.NETCore框架中两个核心的概念,它们在应用程序的架构中扮演着关键的角色。本文将详细探讨这两个概念,并展示如何在.NETCore应用程序中有
- 2024-12-30C#/.NET/.NET Core技术前沿周刊 | 第 19 期(2024年12.23-12.29)
前言C#/.NET/.NETCore技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NETCore领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿、推荐或自荐优质文章、项目、学习资源等。
- 2024-12-30Linux(Debian)下部署.NET Core网站(守护进程)
守护进程(可选)sudonano/etc/systemd/system/opac.service键入文本[Unit]Description=opacOPAC[Service]WorkingDirectory=/usr/share/opacExecStart=/usr/bin/dotnet/usr/share/opac/OPAC.dll--urls=http://192.168.0.121:8001&Restart=always#Restartservi
- 2024-12-30深入理解ASP.NET Core 管道的工作原理
在.NETCore中,管道(Pipeline)是处理HTTP请求和响应的中间件组件的有序集合。每个中间件组件都可以对请求进行处理,并将其传递给下一个中间件组件,直到请求到达最终的处理程序。管道的概念类似于流水线,每个中间件组件都是流水线中的一个步骤。1.管道的基本概念在.NETCore中
- 2024-12-30推荐 5 个 火火火火 的CMS开源.Net项目
下面推荐5个基于.NetCore开发的CMS开源项目。一、OrchardCore基于ASP.NETCore构建的、模块化和多租户应用程序框架,采用文档数据库,非常高性能,跨平台的系统。1、跨平台:这是基于.NetCore开发的系统,可以部署在Docker,Windows,Linux,Mac。2、数据库:兼容MySQL、Sqlserver、Sql
- 2024-12-29.Net Core 8 NLog连接PostgreSQL数据库
最近在做的项目需要把日志记录到本地和数据库,我使用的是NLog,主要参考博文链接:.NET项目中NLog的配置与使用-追逐时光者-博客园,下面是NLog连接PostgreSQL数据库的步骤,网上关于NLog连接PostgreSQL数据库的实例比较少,大多数都是mysql的。1、创建Nlog.config配置文件,将下面配置文
- 2024-12-27ASP.NET Core 标识(Identity)框架系列(四):闲聊 JWT 的缺点,和一些解决思路
前言前面的几篇文章讲了很多JWT的优点,但作为技术人员都知道,没有一种技术是万能的"银弹",所谓有矛就有盾,相比Session、Cookie等传统的身份验证方式,JWT在拥有很多优点的同时,也有着不可忽视的缺点,比如:JWT的缺点无法撤销一旦JWT被发放给客户端,在有效期内这个Token就一
- 2024-12-27asp.net core webapi 向前端返回一个文件
后端接口返回文件[Authorization]//给下载模版添加权限[HttpGet]publicIActionResultDownloadTemplate(){//AppContext.BaseDirectory用于获取项目根目录varfilePath=$"{AppContext.BaseDirectory}/MyStaticFiles/取货模板.csv";if(!System.IO.File.E
- 2024-12-27ASP.NET Core 中的速率限制中间件的使用
简介在ASP.NETCore中,速率限制中间件是用来控制客户端对WebAPI或MVC应用程序发出请求的速率,以防止服务器过载和提高安全性。下面是AddRateLimiter的一些基本用法:1.注册服务在Startup.cs或Program.cs中,需要注册AddRateLimiter服务。这可以通过以下代码完成:builder.S
- 2024-12-27(九).NET6.0搭建基于Redis的Hangfire定时器
1.首先创建新的类库项目Wsk.Core.Hangfire,然后在Wsk.Core.Package包项目下引用hangfire有关的组件,包括Hangfire、Hangfire.Core、Hangfire.Redis、Hangfire.Redis.StaskExchange2.在配置文件新增基于redis的hangfire的数据库连接3.在Wsk.Core.Hangfire项目下,新增Hangfire连