Fork me on GitHub
合集-C#
ASP.NET之Ajax系列(一)
摘要:我们在Web开发中经常会接触到Ajax技术,同时Ajax技术也有很多种实现方式,那么,我们今天从第一种方式说起:ASP.NET原生控件实现Ajax。 ASP.NET原生控件用于Ajax技术的主要是UpdatePanel和ScriptManager,前者顾名思义,是一个可以用于盛放内容的容器,用... 阅读全文
posted @ 2014-06-28 16:53 Wackysoft 阅读(1619) 评论(5) 推荐(3)
ADO.NET系列之操作XML
摘要:如题,我们保存数据的方式有很多种。在ASP.NET中,可以通过js赋值隐藏域的方式,也可以通过ViewState,Session这样的内置对象,还可以通过数据库的形式。现在经常用到的就是XML了,它的结构灵活,同时占用的空间很少,也比较容易操作,今天我们就来说说ADO.NET中,如何去操作XML... 阅读全文
posted @ 2014-07-02 22:43 Wackysoft 阅读(1279) 评论(4) 推荐(1)
浅谈.Net异步编程的前世今生----APM篇
摘要:前言 在.Net程序开发过程中,我们经常会遇到如下场景: 编写WinForm程序客户端,需要查询数据库获取数据,于是我们根据需求写好了代码后,点击查询,发现界面卡死,无法响应。经过调试,发现查询数据库这一步执行了很久,在此过程中,UI被阻塞,无法响应任何操作。 如何解决此问题?我们需要分析问题成因: 阅读全文
posted @ 2019-04-27 20:58 Wackysoft 阅读(1731) 评论(4) 推荐(3)
C# Hook原理及EasyHook简易教程
摘要:前言 在说C# Hook之前,我们先来说说什么是Hook技术。相信大家都接触过外挂,不管是修改游戏客户端的也好,盗取密码的也罢,它们都是如何实现的呢? 实际上,Windows平台是基于事件驱动机制的,整个系统都是通过消息的传递来实现的。当进程有响应时(包括响应鼠标和键盘事件),则Windows会向应 阅读全文
posted @ 2018-03-11 15:28 Wackysoft 阅读(33532) 评论(26) 推荐(39)
ASP.NET之Ajax系列(三)
摘要:我们通过前两篇文章的学习,已经大致掌握了Ajax的实现方法,同时也可以对比出两种方式的优劣。但是我们还是没有搞清楚真正的ajax的实现原理,以及最原始的,未经过封装的ajax是什么样的,今天我们一起来探索这些之前不了解的地方。 首先在上一篇也提到过,Ajax是异步的Javascript和XML... 阅读全文
posted @ 2014-07-15 21:26 Wackysoft 阅读(2305) 评论(25) 推荐(3)
ASP.NET之Ajax系列(二)
摘要:在上一次的Ajax操作中,我们使用了ASP.NET原生控件实现,但是弊端很多,效率低下,而且有个文件上传的BUG:http://blog.csdn.net/zhaoqiliang527/article/details/4457961。 于是我们寻求更好的实现方式,jQuery的Ajax方法配合... 阅读全文
posted @ 2014-07-14 21:47 Wackysoft 阅读(1519) 评论(11) 推荐(2)
C#性能优化-树形结构递归优化
摘要:前言 大家好,我是wacky,最近在工作中遇到一个有趣的问题,同事反馈说WPF中有一个树形结构的集合,在加载时会直接报堆栈溢出,一直没时间(懒得)看,导致很久了也没人解决掉。于是,组长就把这个"艰巨"的任务交给了我。作为新人中的"高手",必然要义不容辞地接受挑战喽,废话不多说,走起。 分析 由于同事 阅读全文
posted @ 2023-08-07 20:47 Wackysoft 阅读(1810) 评论(5) 推荐(6)
浅谈.Net异步编程的前世今生----EAP篇
摘要:前言 在上一篇博文中,我们提到了APM模型实现异步编程的模式,通过使用APM模型,可以简化.Net中编写异步程序的方式,但APM模型本身依然存在一些缺点,如无法得知操作进度,不能取消异步操作等。 针对这些缺点,微软在.Net 2.0中提出了基于事件的异步模式,简称为EAP模型。 第二个异步编程模型: 阅读全文
posted @ 2019-05-27 22:56 Wackysoft 阅读(1304) 评论(1) 推荐(3)
.NET工控开发:一个被低估的赛道
摘要:前言 大家好,我是wacky。最近在整理工控方向的技术资料时发现一个现象:提起.NET做工业控制,很多人的第一反应是"WinForm拖几个按钮、接个串口"。但实际接触下来,从PLC通信到数据可视化、从状态机引擎到机器视觉,整个.NET工控生态已经覆盖了从设备层到企业层的完整链路。这个系列的目标不是教 阅读全文
posted @ 2026-08-02 09:00 Wackysoft 阅读(2352) 评论(18) 推荐(12)
通信协议实战:Modbus与OPC UA怎么选
摘要:前言 大家好,我是wacky。上一篇我们聊了工控的基本概念——什么是PLC、通信协议是干什么的以及.NET在工控领域的生态位。今天我们往下挖一层,进入实战环节:通信协议到底怎么用、怎么选、怎么避坑。 上一篇留了个概览表,今天展开聊两个核心协议:Modbus和OPC UA。为什么是这两个?因为它们覆盖 阅读全文
posted @ 2026-08-04 08:06 Wackysoft 阅读(524) 评论(5) 推荐(7)
工控生态之数据与业务:采集到的数据怎么存、怎么管、怎么用
摘要:前言 大家好,我是wacky。上一篇我们聊了通信协议——Modbus和OPC UA怎么选、怎么用、怎么避坑。如果通信协议是"把数据搬过来",那今天这一篇解决的问题是:数据搬过来之后怎么办。 一个工控上位机系统,通信只是第一步。PLC每秒推送几百上千个数据点,你拿到了温度、压力、流量、位置……然后呢? 阅读全文
posted @ 2026-08-05 08:08 Wackysoft 阅读(653) 评论(0) 推荐(5)
工控生态之展示与交互:怎么让工业软件不再"丑"
摘要:前言 大家好,我是wacky。前两篇我们聊了通信协议和数据与业务层——怎么把数据从PLC搬过来、怎么存、怎么管。数据有了,业务逻辑有了,最后一公里是:怎么把这些东西呈现给用户。 这一篇是工控上位机技术栈的第三层——展示与交互层。说白了就是界面。工控软件的界面名声一直不太好,"土味工控"几乎成了行业标 阅读全文
posted @ 2026-08-06 08:11 Wackysoft 阅读(499) 评论(0) 推荐(2)
.NET工控概念科普——工控的"实时"和Web的"实时"不是一回事
摘要:前言 大家好,我是wacky。上四篇我们画完了.NET工控的生态地图——通信协议、数据存储、业务逻辑、界面展示,一条完整的技术栈链路。从这一篇开始,我们换个角度:不聊技术栈,聊聊一些工控的基本概念。这些概念看起来"虚",但它们直接决定你做架构决策时的判断力。 第一个要聊的概念是"实时"。如果你做过W 阅读全文
posted @ 2026-08-07 09:22 Wackysoft 阅读(479) 评论(4) 推荐(5)
.NET工控概念科普——PLC扫描周期:理解了它才算入了工控的门
摘要:前言 大家好,我是wacky。上一篇我们聊了工控的"实时"——为什么工控的实时不是"快"而是"确定"。那么理解实时性之后,下一步就是理解PLC的扫描周期,因为扫描周期是PLC实时性的具体实现机制。 很多做上位机的.NET开发者觉得扫描周期是PLC工程师的事,跟自己没关系。这是一个认知误区。你的上位机 阅读全文
posted @ 2026-08-10 09:25 Wackysoft 阅读(362) 评论(0) 推荐(2)
.NET工控概念科普——下位机和固件,上位机开发者必须搞懂的"另一半"
摘要:前言 大家好,我是wacky。上一篇我们聊了PLC扫描周期,PLC凭什么能做到确定性响应,答案藏在"读、算、写"的三步循环里。前两期概念篇聊的都是"时间维度"的东西——实时性和扫描周期。这一期换个角度,聊一个更基础但很多人模糊的概念:下位机和固件。 为什么聊这个?因为我发现很多从纯软件开发转过来的. 阅读全文
posted @ 2026-08-12 09:20 Wackysoft 阅读(228) 评论(0) 推荐(3)
.NET工控概念科普——SCADA、MES、ERP三种系统的边界
摘要:前言 大家好,我是wacky。上一篇我们聊了下位机和固件,前面几期概念篇聊的都比较"底层":实时性、扫描周期、下位机、固件。这一期我们往上走一层,聊一个工程里绕不开、但很多人一直没理清的概念:SCADA、MES、ERP 系统的边界。 为什么要聊这个?因为在日常交流时,我发现一个很普遍的现象:刚入行的 阅读全文
posted @ 2026-08-17 09:07 Wackysoft 阅读(532) 评论(2) 推荐(2)