随笔分类 - C#
摘要:本文介绍了OKex V5 REST API签名规则,并使用C#实现了签名。在Demo中使用Flurl.Http类库进行HTTP请求,介绍了使用只读API和交易API获取数据的方法。 比较遗憾的是,国内网络是无法访问该API的。 1、签名介绍 OK-ACCESS-SIGN的请求头是对timestamp
阅读全文
摘要:CustomSerialPort通过在一定时间(默认128ms)内获取串口数据,实现串口数据的反馈。这种方法在应答式串口交互情景下,或者在串口返回数据不密集的时候比较有用。但是如果串口持续性发送数据,比如某些电子秤在特定模式下会定时发送数据,这种方法有可能接收不到完整的一帧串口数据。本文在Custo
阅读全文
摘要:在Prism中可以使用反射进行模型映射,但是这种映射方式对Model和DTO中相同字段不同类型就无能为力了,或者需要复杂的处理才能达成目标。 使用AutoMapper进行模型映射就简单多了,但是其在Prism中的应用很少,在.Net环境下一般应用于Asp .Net Core居多。经过一番搜索和摸索,
阅读全文
摘要:本文分别基于.Net Framework和.Net Core的WPF应用程序为例,来说明如何为.Net项目添加自定义动态库加载路径。本文基于.Net Core创建WPF时,使用了.Net5作为目标框架。 1、.Net Framework 在基于.Net Framework的WPF项目中,直接在配置文
阅读全文
摘要:Prism框架下的登录窗口跳转思路是,将LoginWindow作为主窗口运行,登录完成后在LoginWindow中使用容器切换窗口为MainWindow并显示,最后关闭LoginWindow即可。 需要注意的是,如果想要在MainWindow中通过区域名称(RegionManager.RegionN
阅读全文
摘要:C#中的CancellationTokenSource类可以通过CancelAfter方法设置超时时间,因此可以用于异步方法中的超时设置。 测试代码: class Program { static async Task Main(string[] args) { using (var tokenSo
阅读全文
摘要:要在ASP.Net Core Web API中上传文件,需要在Controller中提供上传方法,一般为Post类型。这时候客户端一般使用MultipartFormDataContent作为上传内容,可以设置token以及一些和文件相关的参数。在ControllerBase中,可以通过HttpCon
阅读全文
摘要:官方学习资料:多服务器实例。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 创建多服务器实例,首先需要定义多服务器配置,在serverOptions节点定义多个服
阅读全文
摘要:官方学习资料:WebSocket服务器。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket.WebSocket.Server 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 WebSocket服务器使用WebSoc
阅读全文
摘要:官方学习资料:获取会话的连接和断开事件。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 在SuperSocket 2.0中有3个类可以获取会话的连接和断开事件:A
阅读全文
摘要:1、C#异步简介 C#使用关键字await实现async异步操作,需要在await关键字后面添加异步代码或者等待代码。如果要优雅的取消异步方法,则需要使用CancellationToken来检测任务是否取消。 2、代码示例 using System; using System.Threading;
阅读全文
摘要:官方学习资料:扩展你的AppSession和SuperSocketService。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 SuperSocket 2.0中
阅读全文
摘要:官方学习资料:命令和命令过滤器。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 1、创建项目 使用VS2019创建.NET Core控制台程序,选择.Net Co
阅读全文
摘要:官方学习资料:实现你的PipelineFilter。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 1、创建项目 使用VS2019创建.NET Core控制台程序
阅读全文
摘要:官方学习资料:通过配置启动 SuperSocket。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 1、创建项目 使用VS2019创建.NET Core控制台程序
阅读全文
摘要:官方学习资料:一个Telnet示例。 本文开发环境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。 Gitee:SuperSocketV2Sample。 1、创建项目 使用VS2019创建一个.NetCore控制台程序,目标框架选择
阅读全文
摘要:C#互斥锁Mutex在Windows平台能够用于进程间同步,使用它来进行单例检测比较合适。但是在Linux环境下,无论是Mono还是.NetCore(3.1)中都不能够用于进程间同步。 1、测试代码 using System; using System.Globalization; namespac
阅读全文
摘要:InfluxDB是一个时间序列数据库,它被设计用于处理高写入和查询负载。 本文简单介绍了如何下载、配置、启动InfluxDB,以及如何使用InfluxDB客户端进行数据操作。开发环境为:Windows10,influxdb-1.8.4,VS2015,Vibrant.InfluxDB.Client 3
阅读全文
摘要:CustomSerialPort 项目地址:flyfire.CustomSerialPort。Github主页上对其介绍为:一个增强的自定义串口类,实现协议无关的数据帧完整接收功能,支持跨平台使用。 经过查看其源码,发现其核心思想是在SerialPortStream类库的基础上,将128ms(默认)
阅读全文
摘要:在对PLC在线检测的时候,可能会用到IsAvailable属性,但是这个属性在S7netplus v0.9.0版本中并不能让人放心使用。
通过Socket连接来验证PLC是否可用。
使用Ping对象直接通过IP来和目标机器进行连接。
阅读全文