- 博客(11)
- 收藏
- 关注
原创 c#如何优雅的使用Prism下的DelegateCommand
Prism 框架中的是 MVVM 模式下命令绑定的核心实现,它实现了ICommand接口,用于将 UI 交互(如按钮点击)与 ViewModel 中的业务逻辑解耦。相比自定义实现,Prism 的提供了更完善的功能、线程安全和类型支持,是 Prism 生态中连接 View 和 ViewModel 的重要桥梁。后面我会介绍自定义的写法,作为合格的Engineer当然是既要学会运用现成的工具,又要知道基本的实现原理。实现自定义的本质上是实现ICommand。
2025-09-01 15:00:36
1240
原创 c#之依赖注入学习
在 C# 中,依赖注入(Dependency Injection,简称 DI)是一种设计模式"依赖的对象不由自身创建,而是由外部传入"。接口(Interface)是一种抽象类型,它定义了一组方法、属性或事件的 "契约",但不提供具体实现。接口的作用是规定 "必须做什么",而具体 "怎么做" 则由实现接口的类来决定。
2025-08-09 15:49:09
1010
原创 Thread和Task使用场景傻傻分不清?一文带你解析C#中Thread和Task的区别和应用场景
Thread是底层的系统级线程工具,适合需要长期运行或精确控制的场景,但资源消耗高,不推荐频繁使用。Task是基于线程池的高级抽象,适合短期任务、异步操作和任务协作,是现代 C# 并发编程的首选(配合可大幅简化代码)。滥用两者都会导致性能下降、稳定性问题,需根据任务类型(短期 / 长期、I/O 密集 / CPU 密集)和控制需求选择合适的工具。
2025-08-07 14:35:16
1906
原创 c#基本概念之什么是设计模式,什么是架构模式
抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。// 产品A接口// 产品B接口// 具体产品A1Console.WriteLine("ProductA1 操作");// 具体产品A2Console.WriteLine("ProductA2 操作");// 具体产品B1Console.WriteLine("ProductB1 操作");// 具体产品B2Console.WriteLine("ProductB2 操作");// 抽象工厂接口。
2025-08-05 11:15:50
914
原创 c#框架之三联问------什么是框架,框架有哪些作用?为什么要使用框架?有哪些框架
在 C# 开发中,框架(Framework)是一套预先设计好的代码库、工具和规范的集合,用于简化应用程序开发。它提供了基础功能(如内存管理、异常处理、网络通信等)和通用组件,让开发者无需重复编写基础代码,专注于业务逻辑实现。框架本质上是半成品的应用程序定义了核心架构和执行流程(如ASP.NET的请求处理管道)。提供开箱即用的功能模块(如数据库访问、UI 组件)。强制或推荐特定的开发规范(如 MVC 模式)。通常包含工具链(编译、调试、部署等)。说白了,框架就是 “帮你把重复活儿干了的工具”
2025-08-03 16:29:24
1372
原创 实战练习----模拟OPCUA通讯软件对PLC的地址进行监控
监控页面XAML代码,左侧是Treeview控件,可以去搜索一下这个怎么用的,监控区主要是用的datagrid来做的,要注意,由于数据类型为Bool的地址,他只有"True"和"False",那么我们的设定值肯定不能使用textbox,试想一下,你需要释放一个电机的使能,你居然要完整的输入"False"那简直也太坐牢了。主要实现的是把数据库中的内容按节点展开,我是通过"/"来表示的,比如"电机1参数/实际电压",那么实际电压就是电机1参数的叶子节点,那如果我的电机1参数下还有子节点呢?
2025-08-02 17:03:26
953
原创 SQLSUGAR自学篇(四):SQLSUGAR之仓储模式,以及基本的增删改查
仓储模式(Repository Pattern)是一种数据访问抽象层,它在领域模型和数据访问逻辑之间创建了一个隔离层。通过仓储,你的业务逻辑代码无需直接与数据库交互,而是通过类似集合的接口操作实体对象。
2025-07-07 14:32:55
1832
原创 SQLSUGAR自学篇(三):SQLSUGAR事务练习和批量操作
在数据库操作中,事务是一组不可分割的操作序列,这些操作要么全部成功,要么全部失败。事务管理对于保证数据的一致性和完整性至关重要,特别是在涉及多个数据修改操作的场景中。事务的ACID特性原子性(Atomicity事务中的所有操作要么全部完成,要么全部不完成一致性(事务执行前后,数据库的完整性约束没有被破坏隔离性(Isolation多个事务并发执行时,一个事务的执行不应影响其他事务持久性(Durability事务一旦提交,其结果应该永久保存在数据库中SQLSugar 中的事务实现。
2025-07-05 23:45:00
1074
原创 SQLSUGAR自学篇(二):SQLSUGAR连接SQLITE数据库,实现简单的连表查询
比如我要先从学生选课记录表StudentCourseInfo中找到StudentId,但现在的studentId是没有学生姓名的,我leftJoin表格StudentInfo之后就得到了完整的学生表;现在只有课程的CourseId ,没有课程的详细信息,再LeftJoin表格CourseInfo,的搭配课程的信息;还可以更复杂的查询,比如我查studentid前5个编号的人选的课程,并且课程的价格要大于300。为了测试多表查询,建立了几个数据库表单。表单3-学生选课信息。
2025-07-04 15:31:47
327
原创 SQLSUGAR自学篇(一):SQLSUGAR连接SQLITE数据库,实现简单的增删改查
背景:在gitee上发现了神仙仓库,决定拿来试一下,上b站查了各种资料,全是某套皮培训班的资料,遂写下这篇,方便快速了解这个SqlSugar,以及快速上手,本人也是初学者,不喜勿喷,附果糖网官方文档,;果糖网官方仓库。
2025-07-03 14:03:25
2089
原创 c# 快速了解事件的使用
在 C# 中,是一种成员,用于将特定的事件通知发送给订阅者。事件通常用于实现观察者模式,它允许一个对象将状态的变化通知其他对象,而不需要知道这些对象的细节。事件的基本概念事件基本上是一个用户操作,如按键、点击、鼠标移动等,或者是一些提示信息,如系统生成的通知。应用程序需要在事件发生时响应事件。例如,中断。。。。简单粗暴的理解就是 我在一个A地触发了这个事件,需要在B地做出对应的回应事件的几大要素。
2025-06-22 15:31:50
1085
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅