刷新
[C#] 在异步请求并发情况下,dbcontext的安全问题

第一个问题:在涉及多次含有数据库(dbContext)修改操作的函数,出现偶发修改失败。 原因: 在异步多线程的情况下,当一个线程创建 DbContext 对象,然后进行一些实体状态修改,还没有来得及将状态保存,另一个线程也进行了同样的操作,第一个线程可以 SaveChanges 成功,但是第二个线 ...

在C#中进行单元测试

博主头像 单元测试 前言 时隔多个月,终于抽空学习了点新知识,那么这次来记录一下C#怎么进行单元测试,单元测试是做什么的。 我相信大部分刚毕业的都很疑惑单元测试是干什么的?在小厂实习了6个月后,我发现每天除了写CRUD就是写CRUD,几乎用不到单元测试。写完一个功能直接上手去测,当然这只是我个人感受,仅供参考 ...

码农的转型之路-全力以赴升级物联网浏览器(IoTBrowser)

博主头像 在人生的重要时刻,我站在了毕业的门槛上,望着前方的道路,心中涌动着对未来的无限憧憬与些许忐忑。面前,两条道路蜿蜒伸展:一是继续在职场中寻求稳定,一是勇敢地走出一条属于自己的创新之路。尽管面临年龄和现实的挑战,我仍旧选择勇往直前,用技术这把钥匙,开启新的人生篇章。 回首过去,我深知时间宝贵,精力有限。 ...

为什么不推荐使用Linq?

博主头像 相信很多.NETer看了标题,都会忍不住好奇,点进来看看,并且顺便准备要喷作者! 这里,首先要申明一下,作者本人也非常喜欢Linq,也在各个项目中常用Linq。 我爱Linq,Linq优雅万岁!!!(PS:顺便吐槽一下,隔壁Java从8.0版本推出的Streams API,抄了个四不像,一点都不优雅 ...

.NET下 支持大小写不敏感的JSON Schema验证方法

博主头像 问题 有很多应用程序在验证JSON数据的时候用到了JSON Schema。 在微服务架构下,有时候各个微服务由于各种历史原因,它们所生成的数据对JSON Object属性名的大小写规则可能并不统一,它们需要消费的JSON数据的属性名可能需要大小写无关。 遗憾的是,目前的JSON Schema没有这方 ...

04_搭建一个VUE3前端架子+gitee配置

博主头像 1.创建一个文件夹HCJV_01 2.vscode打开该文件夹,打开终端。 3.使用vite安装,选择vue,选择JavaScript,项目名称demo01 cnpm create vite@latest 4.跳转demo01目录下 cd demo01 5.安装cnpm cnpm install 尝 ...

中台框架模块开发实践-代码生成器的添加及使用

博主头像 前言 之前已经分享过几篇关于中台项目框架的文章,相关介绍就不再赘述 所谓工欲善其事必先利其器,一个项目拥有一个代码生成器是很有必要的,能够大大的节省时间,减少手误,提供开发效率(ps:特别小团队搞微服务但是没有代码生成器,简直要了老命) 本文将分享如何在中台框架项目 Admin.Core 中添加代码 ...

WPF 做一个超级简单的 1024 数字接龙游戏

这是一个我给自己做着玩的游戏,没有什么复杂的界面,就一些简单的逻辑 游戏的规则十分简单,那就是有多个列表。程序会给出一个数字,玩家决定数字放在哪个列表里面。如果放入列表里面的数字和列表里面最后一个数字相同,那两个数字将会叠加进行合并,合并两个 1024 将会自动清理掉整个列表 如下图,有 5 个列表 ...

dotnet 融合 Avalonia 和 UNO 框架

现在在 .NET 系列里面,势头比较猛的 UI 框架中,就包括了 Avalonia 和 UNO 框架。本文将告诉大家如何尝试在一个解决方案里面融合 Avalonia 和 UNO 两个框架,即在一个进程里面跑起来两个框架 ...

Git的安装及使用

博主头像 官网:Git for Windows 点击下载安装。 右击鼠标会出现GUI和Bash 选择git bash here 配置全局用户名和邮箱(gitee) git config --global user.name "你的名字" git config --global user.email 你的邮箱 ...

.NET-9-计算机思想-构建器模式(Builder Pattern)

博主头像 目录前言学习参考过程总结: 前言 做个自由仔。 学习参考 ChatGpt; https://www.cnblogs.com/zhili/p/DesignPatternSummery.html(大佬的,看了好多次) 过程 原由: 一开始只是想查查链式调用原理,以为是要继承什么接口,实现什么方法才可以实 ...

聊一聊 Monitor.Wait 和 Pulse 的底层玩法

博主头像 一:背景 1. 讲故事 在dump分析的过程中经常会看到很多线程卡在Monitor.Wait方法上,曾经也有不少人问我为什么用 !syncblk 看不到 Monitor.Wait 上的锁信息,刚好昨天有时间我就来研究一下。 二:Monitor.Wait 底层怎么玩的 1. 案例演示 为了方便讲述,先 ...

在Winform程序中动态绘制系统名称,代替图片硬编码名称

博主头像 在以前我做程序的时候,一般在登录窗口里面显示程序名称,登录窗口一般设置一张背景图片,由于程序的名称一般都是确定的,所以也不存在太大的问题,不过如果客户定制不同的系统的时候,需要使用Photoshop修改下图层的文字,再生成图片,然后替换一下也可以了。不过本着减少客户使用繁琐性,也可以使用空白名称的通... ...

.NET 8 中的后台服务:IHostedService 和 BackgroundService

NET 8 引入了强大的功能,用于使用 和 管理后台任务。这些服务使长时间运行的操作(如计划任务、后台处理和定期维护任务)能够无缝集成到您的应用程序中。本文探讨了这些新功能,并提供了实际示例来帮助你入门。您可以在我的 GitHub 存储库中找到这些示例的源代码。IHostedServiceBackg ...

六边形架构简介

六边形架构简介 在这本综合指南中,我们将引导您了解有关此强大架构模式的所有信息。我们将介绍基本和核心概念、使用六边形架构的好处、实际示例、测试以及最后的常见问题解答部分,如果您还有其他疑问! 最后,您不仅将了解 Hexagonal Architecture,而且还可以在 C# 项目中实现它。让我们开 ...

C#.Net筑基-集合知识全解

博主头像 .Net 中提供了一系列的管理对象集合的类型,数组、可变列表、字典等。从类型安全上集合分为两类,泛型集合 和 非泛型集合,传统的非泛型集合存储为Object,需要类型转。而泛型集合提供了更好的性能、编译时类型安全,推荐使用。 ...

<1···345···50>