缓存webapi core net

Redis学习之缓存实现及缓存更新

介绍 什么是缓存? 缓存就是数据交换的缓冲区(称作Cache [ kæʃ ] ),是存贮数据的临时地方,一般读写性能较高。 为什么需要缓存? 提前准备好数据,便于更快地读写。 缓存是把双刃剑,要权衡利弊。 优点:降低后端负载 提高读写效率,降低响应时间 缺点:数据一致性成本 代码维护成本 运维成本 ......
缓存 Redis

对象模型和关系数据库中的关系表示形式,包括 EF Core 在两者之间的映射方式

public class Post {//文章 public string Title { get; set; } public string Content { get; set; } public DateOnly PublishedOn { get; set; } public bool Ar ......
模型 对象 形式 之间 方式

asp.net 跨域问题解决

前言: 近期在对接前后端分离的项目中遇到了跨域问题,查了一些资料都比较新,没有比较老的解决方式所以记录一下 背景如下: 后端最老的 aspx 前端 vue3 部署在iis上 1.跨域的处理 点击查看代码 <httpProtocol> <customHeaders> <add name="Access ......
问题 asp net

.Net Core WebApi 模型验证无效时报400

webapi默认处理了模型验证,所以会返回自带的格式,若我们想返回自定义的格式,就需要关闭它 然后自行获取。 主要是下面标红这句: services.AddControllers() .ConfigureApiBehaviorOptions(options => { options.Suppress ......
时报 模型 WebApi Core Net

ChatGPT - Logging Preferences in .NET

了解 .NET 第三方日志包的更新进度、使用流量,以从 1-2 个备选中进行选择。目前认为最合适的是 Serilog 和 NLog,活跃,均支持集成扩展 Microsoft.Extensions.Logging、结构化日志(以便进行统计分析)。 ......
Preferences ChatGPT Logging NET in

编译.NET 7.0 Runtime源代码

1. 从github拉取代码,路径: https://github.com/dotnet/runtime https://github.com/dotnet/runtime.git 2. 切换分支到 "release/7.0" release/7.0 3. 编译源代码需要另外安装:python、cm ......
源代码 Runtime NET 7.0

.net core创建数据库、seed数据、部分修改字段

#region 创建数据库//如果数据库有表,则 EnsureCreated 方法不执行任何操作。//如果没有数据库,或者没有任何表,则它将创建数据库和架构。//EnsureCreated 启用以下工作流来处理数据模型更改://删除数据库。更改数据模型。重新运行应用。//EnsureCreated ......
数据 字段 部分 数据库 core

关于.Net 6.0 在Linux ,Docker容器中,不安装任何依赖就生成图形验证码!!!!!!!!!!!

在.Net Framework时代,我们生成验证码大多都是用System.Drawing。 在.Net 6中使用也是没有问题的。 但是,System.Drawing却依赖于Windows GDI+。 为了实现跨平台,我陷入了沉思!! 微软推荐使用SkiaSharp 进行替代,所以就开始了,踩坑之旅 ......
容器 图形 Docker Linux Net

每个.NET开发都应掌握的C#异常处理知识点

上篇文章讲述了C#集合知识点,本文将介绍C#异常处理知识点。异常处理是.NET开发中至关重要的一部分,它允许开发者在程序出现错误或不正常情况时采取适当的措施,从而提高应用程序的稳定性和可靠性。本文将介绍C#异常处理知识点,异常的基本概念略过,请查看官网。 1、自定义异常 开发者可以创建自定义异常类, ......
知识点 知识 NET

20230919 .NET面经

SQL IQuerable 和 IEnumerable 的主要区别? https://stackoverflow.com/questions/252785/what-is-the-difference-between-iqueryablet-and-ienumerablet So the diffe ......
20230919 NET

在 Net7.0环境下通过反射创建泛型实例和调用泛型方法

一、介绍 最近没事干,就用闲暇时间写点东西,也记录一下温习历程。老人说的好,好记性,不如烂笔头。时间一长,当时记忆的再清楚,都会变得模糊,索性就写博客记录下来,如果下次需要,直接打开博客就找到了,不用去网上乱找了。 今天我要写一些有关反射和泛型的关系,泛型的类型的创建和泛型方法的调用是普通类型(非泛 ......
实例 环境 方法 Net7 Net

.NET 实现仓储Repository(AI)

来自你的消息: 请用 .net core 7 实现仓储模式 来自WeTab AI的消息: 非常抱歉,当前没有 .NET Core 7 的版本。最新的 .NET 版本是 .NET 6。在 .NET 6 中,您可以使用仓储模式来管理您的数据存储。 仓储模式是一种在应用程序中使用的设计模式,它将数据访问逻 ......
Repository NET AI

【.NET8】访问私有成员新姿势UnsafeAccessor(下)

前言 书接上回,我们讨论了在.NET8中新增的UnsafeAccessor,并且通过UnsafeAccessor访问了私有成员,这极大的方便了我们代码的编写,当然也聊到了它当前存在的一些局限性,那么它的性能到底如何?我们今天就来实际测试一下。 测试代码 话不多说,直接上代码,本次测试代码如下: us ......
UnsafeAccessor 姿势 成员 NET8 NET

[MDP.Net] 軟體分層(Layer)與程式專案(Project)

在.NET裡,軟體分層(Layer)與程式專案(Project),不一定是一對一,常常有一個Layer切割成好幾個Project的情景發生。MDP.Net是將DDD的每個Context,設計為Domain層的Project。在Project裡面會包含該Context相關的Entity、Reposit ......
程式 Project Layer MDP Net

Linux服务器使用Redis作为数据缓存,并用log4j2进行日志记录

前言 个人网站使用Vue作为前端,SpringBoot作为后端,MySQL作为数据库,但前端每次请求都会从MySQL数据库中读取数据,而MySQL数据库的数据是存储于服务器磁盘中,所以响应速度有一定影响。之前了解过一点Redis数据库,该数据库数据存储于内存中(也可以持久化于磁盘中),数据读取速度就 ......
缓存 服务器 数据 log4j2 Linux

缓存穿透,缓存击穿,缓存雪崩区别

缓存穿透,缓存击穿,缓存雪崩区别 发现自己有时候明明已经做过了,可能是缺少回顾总结,过了几天这部分知识就会忘的一干二净,一点有记不住,还有这三个概念有时候确实不太能把他分清楚,面试的时候也有让自己说清楚,说的一塌糊涂,所以总结一下 一、缓存穿透,缓存击穿,缓存雪崩简单的区别 缓存穿透是指客户端请求的 ......
缓存 雪崩

本地缓存无冕之王Caffeine Cache

Caffeine Cache以其高性能和可扩展性赢得 本地缓存之王 的称号,它是一个Java缓存库。它的设计目标是优化计算速度、内存效率和实用性,以符合现代软件开发者的需求。 ......
无冕之王 缓存 Caffeine Cache

详细解释一下redis的缓存击穿、缓存雪崩的原理,以及如何避免?

缓存击穿和缓存雪崩是两种常见的缓存问题,它们会对系统性能和可用性产生负面影响。以下是对这两个问题的详细解释以及如何避免它们的方法: 缓存击穿(Cache Miss) 原理: 缓存击穿是指在高并发的情况下,多个请求同时访问缓存,但缓存中不存在所需数据。这些请求会穿透缓存,直接访问底层数据库或其他数据存 ......
缓存 雪崩 原理 redis

App性能指标(安装、冷启动、卸载、平均内存/cpu/fps/net)测试记录

【需求背景】 需要针对产品以及竞品做出横向对比,输出对应的比对测试报告,供产研进行产品性能优化依据 【测试方案】 对于主流的厂商和系统版本进行多维度的横向对比 厂商:华为系、小米系、蓝绿系、三星系、苹果系、联想等 系统:android10-14,ios11-16,鸿蒙2-3 指标:安装时间、冷启动时 ......
内存 性能 指标 App cpu

全面解决.Net与Java互通时的RSA加解密问题,使用PEM格式的密钥文件

一、缘由 RSA是一种常用的非对称加密算法。所以有时需要在不用编程语言中分别使用RSA的加密、解密。例如用Java做后台服务端,用C#开发桌面的客户端软件时。由于 .Net、Java 的RSA类库存在很多细节区别,尤其是它们支持的密钥格式不同。导致容易出现“我加密的数据对方不能解密,对方加密的数据我 ......
密钥 格式 文件 问题 Java

【HMS Core】华为运动健康服务调用接口50011问题

​【关键字】 HMS、运动健康服务、50011 【问题描述】 有开发者反馈在集成运动健康服务,huawei healthKit 登录认证时返回50011 手机:pixel 4 用项目集成时登录认证返回错误吗50011,后面使用官网提供的demo代码,appid、包名等换成正确的后运行还是返回5001 ......
接口 问题 50011 Core HMS

ASP.NET Core 服务的生命周期

概念 Transient:每一次GetService都会创建一个新的实例 Scoped:在同一个Scope内只初始化一个实例 ,可以理解为 每一个request级别只创建一个实例,同一个http request会在一个 scope内 Singleton:整个应用程序生命周期内只创建一个实例 案例演示 ......
周期 生命 Core ASP NET

Linux 安装.Net 5 SDK

1.添加信任 运行如下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库。 sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm ......
Linux Net SDK

.NET MVC,浏览器端访问图片链接直接下载而不是查看

去掉文件名即可 public ActionResult Image() { string filePath = "D:\\123.png"; //return File(CommonHelper.GetImage(filePath), "image/png","123.png");//这种写法是错误 ......
浏览器 链接 图片 NET MVC

在 Net7.0环境下测试了 Assembly.Load、Assmebly.LoadFile和Assembly.LoadFrom的区别

一、简介 很长时间没有关注一些C#技术细节了,主要在研究微服务、容器、云原生、编批等高大上的主题了,最近在写一些框架的时候,遇到了一些和在 Net Framework 框架下不一样的情况,当然了,我今天主要测试的是,在通过【添加项目引用】和【手动拷贝DLL】的情况下,这三个方法加载程序集:Assem ......
Assembly Assmebly LoadFile LoadFrom 环境

.NET MVC返回图片并通知浏览器进行缓存

public ActionResult Image() { string filePath = "D:\\123.png"; Response.Cache.SetExpires(DateTime.Now.AddDays(365)); // 缓存有效期为365天 Response.Cache.SetC ......
缓存 浏览器 图片 NET MVC

Redis缓存穿透,击穿,雪崩问题改如何解决?

无论在开发过程中还是面试过程中,这三个问题总是被遇到。下面是各个问题的原因和解决方案。 缓存穿透 原因 缓存穿透其实是缓存的单点问题,是指查询一个一定不存在的数据。如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到 DB 去查询,可能导致 DB 挂掉。这种情况大概率是遭到了攻 ......
雪崩 缓存 问题 Redis

.NET 6.0 如何使用对象映射库AutoMapper

AutoMapper是一个非常流行的对象到对象映射(Object-to-Object Mapping)库,它可以帮助开发人员简化对象之间的转换工作。在软件开发中,我们经常需要将一个对象的属性值映射到另一个对象的属性上,而手动进行属性复制会显得冗长和重复。AutoMapper通过自动执行对象属性之间的 ......
AutoMapper 对象 NET 6.0

使用任务计划开机启动ASP.NET Core应用程序

ASP.NET Core应用程序现在是一个控制台应用程序,在Windows上直接双击启动,但如果想让开发完成的ASP.NET Core应用程序开机启动,可以将ASP.NET Core应用程序修改成Windows服务运行,但这需要额外添加代码,也可以使用IIS来托管ASP.NET Core应用程序,但 ......
应用程序 任务 程序 Core ASP

.net core swagger分组与分组隐藏

swagger接口一多,还是需要分个组比较妥当,以图文方式看更直观 定义分组 添加分组 看板展示 两个分组 我要对v1组进行隐藏,首先先了解一下 ApplicationModel ApplicationModel描述了应用中的各种对象和行为,包含Application、Controller、Acti ......
swagger core net