摘要:
## 引言 **抽象工厂模式**一种创建型设计模式,它提供了一种方式来封装一组具有相同主题的工厂,而不必指定它们具体的类。这样,客户端代码就可以使用抽象工厂来创建一组相关的对象,而不必关心实际创建的具体类。 抽象工厂模式有以下几个主要角色: - 抽象工厂(AbstractFactory):声明用于创 阅读全文
摘要:
# 引言 上一篇中[.Net 编译器平台 Roslyn](https://niuery.com/post/67),介绍了Roslyn的各项功能,包括公开API,使用语法,使用语义,使用工作区等功能。 那么回到上一篇中提到的问题,实现类似这样的功能(以下代码为伪代码): ```csharp strin 阅读全文
摘要:
# 引言 最近做一个功能想要动态执行C#脚本,就是预先写好代码片段,在程序运行时去执行代码段,比如像这样(以下代码为伪代码): ```csharp string scriptText = "int a = 1;int b = 2; return a+b ;"; var result = Script 阅读全文
摘要:
简单学习一下IOC和AOP 聊一聊 IOC& AOP之前,先解释几个问题: AOP的老大哥OOP和老老大哥POP 什么是IoC? IoC 解决了什么问题? 什么是 AOP? AOP 解决了什么问题? AOP 为什么叫做切面编程? 什么是POP,OOP? ==POP (Procedure-Orient 阅读全文
摘要:
C#基于Mongo的官方驱动手撸一个简易版MongoDB-ORM框架 如题,在GitHub上找了一圈想找一个MongoDB的的ORM框架,未偿所愿,就去翻了翻官网(https://docs.mongodb.com/drivers/csharp/) 看了看文档发现官方的驱动功能已经相当强大了并且更新速 阅读全文
摘要:
在我们做工业软件中,经常会遇到要实时监控某一点,在这个点变化时去做一些事情 放入程序里呢,就是要实时监控某一属性的值,当值发生变化时触发事件,其核心就是借助属性的Set方法,来判断当前set的值是否与原来的值相等,如果相等直接赋值不予理会,如果不相等,说明值变了,根据自己调用的方法,声明委托,事件, 阅读全文
摘要:
前两天实现某个功能需要做一个提示框 并且能够自动关闭的,就从网上搜了一个能够自动关闭的提示框 ,但由于我需要的场景是不确定计时时间的,所以并没有使用到该窗体,但是我觉得可以留存备用 ,后边也把我 这种倒计时的提示框用处还是很多的,用于自动弹窗 自动关闭 ,虽然在我的项目中没有 其核心方法在 time 阅读全文
摘要:
之前我们借助一个SuperSocket实现了一个简易版的服务器, 但是不管是Server还是Session都是使用框架的,本篇博客我们要实现自己的Server和Session,来重写框架原生的Server或Session的方法,或添加自己所需的属性,来实现自己的业务逻辑,并且也不在使用事件来绑定接收 阅读全文
摘要:
Modbus Rtu的实现与Modbus Tcp的实现类似 C#ModBus Tcp的学习及Master的实现 我们还是需要借用一个开源库NModbus4,在vs中.打开NuGet管理器.安装NModbus4 具体实现,具体实现与之前的Modbus Tcp的实现类似 ,只是在实例化master时将T 阅读全文
摘要:
上一篇博客已经完成 C#ModBus Tcp Master的实现 本篇主要对不同的功能码所发出的报文进行解析(包括请求报文及响应报文) 读操作 功能码 0x01 读一组线圈 读取站号为1 从地址12开始的10个线圈 测试结果 上一篇博客已经总结了读操作报文格式,就按照格式划分 报文解析: 注意:报文 阅读全文