C#
文章平均质量分 60
SunflowerCoder
归零出发,探索无限可能
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于插件化 + Scriban 模板引擎的高效 HTTP 协议中心设计
本文提出了一种插件化Http协议发送引擎的设计方案,旨在解决传统Http接口对接中代码冗余、业务逻辑与协议拼装混杂的问题。该方案采用三层架构:数据抽象层获取原始业务数据,协议插件层进行数据转换,执行引擎层渲染模板并发送请求。通过定义IHttpPlugin接口实现协议插件化,利用Scriban模板引擎处理复杂数据转换,支持循环、条件等逻辑。系统采用"新增协议只需新增插件"的设计理念,通过模板化方式解耦业务代码与协议实现,显著提升了Http接口对接的灵活性和可维护性。原创 2026-02-05 15:00:42 · 583 阅读 · 0 评论 -
avalonia之自定义控件(TemplatedControl)
本文介绍了在Avalonia框架下开发自定义模板化控件(TemplatedControl)的方法,重点实现根据状态变化显示不同效果。主要内容包括:1)创建模板化控件并定义StyledProperty<bool>实现状态切换;2)使用PseudoClasses管理控件伪类状态;3)XAML样式中正确使用点号(.)引用伪类选择器;4)通过依赖属性实现不同状态下的文字显示;5)最终通过绑定外部属性控制控件状态。开发过程中需要注意伪类引用语法和属性绑定方式,文中提供了完整的前后台代码示例,包括样式定义、原创 2025-12-30 15:27:41 · 749 阅读 · 0 评论 -
EF Core + PostgreSQL 配置表设计踩坑记录:从 23505 到 ChangeTracker 冲突
摘要:针对数据库配置表出现的23505重复键异常和EFCore跟踪冲突问题,分析发现自增ID主键与业务逻辑冲突。推荐重构表结构,将Name设为业务主键,并修改EFCore实体配置。对于跟踪冲突,提出使用AsNoTracking查询和Upsert模式实现初始化代码的幂等性,通过先查询后判断进行新增或更新操作。解决方案兼顾数据一致性和性能优化。原创 2026-01-12 16:29:10 · 118 阅读 · 0 评论 -
WPF迁移avalonia之触发器
本文介绍了WPF触发器在Avalonia平台中的迁移方案:1)属性触发器WPF使用Trigger,Avalonia推荐使用":pointerover"等伪类选择器;2)事件触发器WPF使用EventTrigger,Avalonia通过Transitions实现动画效果;3)数据触发器WPF使用DataTrigger,Avalonia需引入Behaviors包;4)多条件触发器WPF使用MultiTrigger,Avalonia通过组合选择器实现。文章通过具体代码示例对比了两种框架的实现差原创 2025-09-10 16:09:39 · 1008 阅读 · 0 评论 -
WPF迁移avalonia之图像处理(一)
【摘要】从WPF迁移至Avalonia时,图像处理需采用跨平台方案。对比Avalonia原生Bitmap(兼容性优、适合UI操作)与SkiaSharp(功能强大、性能高)后,建议组合使用:通过Bitmap绑定控件,用SkiaSharp处理复杂图像(需相互转换)。迁移时需注意:1)OpenCV扩展包仅限Windows,需重写Mat与Avalonia Bitmap转换;2)WPF的5×5灰度矩阵需转为Skia的4×5矩阵并转置行列,保持偏移量不变。该方案平衡了跨平台兼容性与高级图像处理需求。原创 2025-09-02 17:10:33 · 1100 阅读 · 0 评论 -
avalonia之图片资源加载
在Avalonia中加载图片主要有三种方式:1)推荐将图片作为Avalonia资源嵌入,使用avares://URI方案引用;2)直接引用文件系统中的图片路径;3)通过AssetLoader服务后台加载资源。其中资源嵌入方式最为可靠,可避免部署路径问题。AssetLoader支持访问程序集内嵌资源或外部松散文件资源,适用于不同应用场景的图片加载需求。原创 2025-08-21 16:49:50 · 731 阅读 · 0 评论 -
多线程及其使用场景(一)
多线程编程通过并发执行提高程序性能。本文介绍了三种常见场景的解决方案:1)等待所有线程就绪(Task.WhenAll/CountdownEvent);2)线程间数据依赖(ManualResetEvent/async-await/Channel);3)竞争取最快结果(Task.WhenAny+CancellationToken)。每种场景都提供了C#代码示例,展示了多线程同步和异步编程的实际应用,帮助开发者优化程序执行效率。原创 2025-07-30 23:01:53 · 333 阅读 · 0 评论
分享