v2.0.18
更新日期: 2024.9.10
更新描述:
兼容性修复升级。
更新详情:
- 当Cancel延迟到Reset之后时,新获取的waitData会出现Status为Cancel异常bug #IAQ2AI。
v2.0.17
更新日期: 2024.8.30
更新描述:
兼容性修复升级。
更新详情:
- 使用AspNetCore容器时,默认没有注册ILog的bug。
v2.0.16
更新日期: 2024.8.19
更新描述:
兼容性修复升级。
更新详情:
- tcp在winform中会使用主线程接收的bug,导致各种同步接收异常。
v2.0.15
更新日期: 2024.8.9
更新描述:
兼容性修复升级。
更新详情:
- 当客户端断开连接时,http响应会出现object is null的bug提示。
v2.0.13(14)
更新日期: 2024.7.24
更新描述:
兼容性修复升级。
更新详情:
- 重连插件在长时间运行时,会失效的bug。
- ssl加密下,连接响应时间过长bug#IAET6V 。
v2.0.12
更新日期: 2024.7.17
更新描述:
兼容性修复升级。
更新详情:
- socket在接收连接时,异常无法拦截的bug#IADIGX。
- 日志记录在执行时,先判断日志组件的可用性。
v2.0.11
更新日期: 2024.7.12
更新描述:
兼容性修复升级。
更新详情:
- Metadata在Add时不会覆盖原key的bug。
v2.0.10
更新日期: 2024.5.31
更新描述:
兼容性修复升级。
更新详情:
- WebSocket快捷命令行bug。 #I9TG3V。
v2.0.9
更新日期: 2024.5.29
更新描述:
兼容性修复升级。
更新详情:
v2.0.(7)8
更新日期: 2024.5.17
更新描述:
兼容性修复升级。
更新详情:
- udp首次建立连接无法接收数据的bug。 #I9PV7C。
v2.0.6
更新日期: 2024.5.12
更新描述:
兼容性修复升级。
更新详情:
- FlowGate的waitTime小于0时bug。
v2.0.5
更新日期: 2024.5.2
更新描述:
兼容性修复升级。
更新详情:
- wsclient Received事件与插件触发bug。#I9L9WI。
- ws命令行执行bug。
v2.0.4
更新日期: 2024.4.30
更新描述:
兼容性修复升级。
更新详情:
v2.0.3
更新日期: 2024.4.14
更新描述:
兼容性修复升级。
更新详情:
- Tcp在接收时,内存池释放存在延迟,可能导致内存池快速扩张,浪费内存。#I9FVAA。
- 在使用Host模型时,注入瞬态的TcpClient,在第一次获取实例是正常的,第二次就失败。#I9G3SV。
- WebSocketClient连接其他服务器时显示 “操作已被取消”。#I9GG05。
- ConcurrentList新增实现IReadOnlyList接口。
v2.0.2
更新日期: 2024.4.1
更新描述:
兼容性修复升级。
更新详情:
- TouchSocketBitConverter中的ToBooleans方法存在Bug#I9C1UY。
- SystemExtensions中的GetBit和SetBit方法#I9C1WM。
- HttpService多次响应下载文件时,不会响应的bug。
v2.0.1
更新日期: 2024.3.16
更新描述:
兼容性修复升级。
更新详情:
- HttpClient,无法通过HttpResponse.GetBody()获取响应内容#I989SI。
- SetNoDelay 异常#I979B0。
- 调用Dmtp服务的大数据传输时,如果循环调用会出现收到的数据和发送的数据不一致。实际上该问题是由
ByteBlock
写入扩容bug而导致的#I96FNF。
v2.0.0
更新日期: 2024.3.9
更新描述:
此版本是大版本更新。可能会产生很多不兼容部分,所以升级之前请做好备份,并且请详细阅读下列更新内容。
升级指南:
- 升级时请先升级至
2.0.0-beta.190
,再升级至2.0.0-rc.2
版本,因为正式版对于[Obsolete]特性的成员直接删除了,所以为友好升级,请先升级至此版本。 - 由2.0.0-beta.200至2.0.0-beta.220 #I8DE1D
- 由2.0.0-beta.220至2.0.0-beta.230 #I8LAX4
更新详情:
TouchSokcet.Core
- FileLogger支持指定不同目录。
- 所有自定义插件必须在自身内,主动调用e.InvokeNext()时,才会调用下一个插件。不然会中断插件传递。同时e.Handled功能依然有效。
- Log项。LogType调整为LogLevel,并且不需要位运算。直接按日志等级输出。
- 修改IPluginsManager名称为IPluginsManager。
- DependencyProperty中,移除对类型的定义。
- 所有组件的基础插件,强制用户插件必须继承PluginBase,然后实现需要的接口。
- BytePool在创建ByteBlock时,移除EqualSize的设定,因为这会影响内存池的效率。
- 修改所有委托为异步Task。
- 修改所有Setup返回值为void。
- Metadata在0个成员长度时,会被反序列化成null的bug。
- PluginsManager在注册具有继承的插件时,会无法识别的bug。
TouchSokcet.Sokcets
- IPHost支持从int、string直接隐式转换。
- TouchSocket所有“ID”属性,改名为“Id”。
- TouchSocket所有插件的执行顺序,移动至内部重写方法之后。
- TouchSocket所有
ResetID
改名为ResetId
。 - UseCheckClear项,SetDuration调整名称为SetTick。
- UseCheckClear项,不仅可以适用服务器,客户端也适用。
- Config配置中,SetDataHandlingAdapter调整为SetTcpDataHandlingAdapter。
- 适配器项,CustomDataHandlingAdapter中的Filter方法中,byteBlock参数使用in修饰。
- 适配器项,DataHandlingAdapter改名为TcpDataHandlingAdapter。
- 适配器项,DataAdapterTester改名为TcpDataAdapterTester。
- Config项,所有适配器的相关配置,使用SetAdapterOption配置。
- UsePlugin的显式配置,当调用ConfigurePlugins时,会自动启用。
TouchSokcet.Http
- WSCommandLinePlugin改名为WebSocketCommandLinePlugin。
- WebSocket添加[同步非阻塞Read]。
- WebSocket的WSDataFrame新增IsPing、IsPong、IsText、IsBinary、IsClose等属性。
- 静态网页插件新增NavigateAction与ResponseAction等委托,可以在静态页面请求之前重定向,或者请求返回时设置header等。
TouchSokcet.Rpc
- 整体功能迁移至TouchSokcet(Pro).Dmtp。
- [RpcActionFilter]执行策略和顺序
- 修改ConfigureRpcStore为AddRpcStore。
- [RealityProxy]透明代理方式。
- [DispatchProxy]添加OnBefore和OnAfter的AOP调用。
TouchSokcet(Pro).Dmtp
- 原TouchRpc全系改名为Dmtp。例如:原TcpTouchRpcClient改名为TcpDmtpClient。
- 原TouchRpc中InvokeOption,改名为DmtpInvokeOption。InvokeOption依然有效,但是在调用DmtpRpc时,则无法指定序列化方式。所以可能需要使用DmtpInvokeOption。
- 原TouchRpc中Invoke直接调用的方式,改为InvokeT。
- Dmtp相关配置,使用SetDmtpOption配置。
- 暂时移除EventBus功能,后续可能考虑添加。
- ws协议的TouchRpc服务端,增加HttpContext上下文获取。
- 文件传输项,开放增加SetMaxSpeed功能。
- DmtpRpc。
- DmtpRpc组件在调用时,可以通过DmtpInvokeOption传入Metadata元数据。
- DmtpRpc在调用无ref,out的函数时,参数会为null的bug。
TouchSokcet.JsonRpc
- JsonRpc使用内联数组调用#I79OFZ。
- Rpc服务使用调用上下文时不需要再添加
IncludeCallContext
。
TouchSokcet.WebApi
- WebApi新增[Swagger页面]。
- Rpc服务使用调用上下文时不需要再添加
IncludeCallContext
。
TouchSokcet.XmlRpc
- Rpc服务使用调用上下文时不需要再添加
IncludeCallContext
。
TouchSokcet(Pro).Hosting
- 新发布Hosting的包,用于构建更加强壮的运行程序。
TouchSokcet.SerialPorts
- 新发布串口的包。
TouchSokcet(Pro).Modbus
- 新发布Modbus的包,支持Tcp、Udp、Rtu、RtuOverTcp、RtuOverUdp协议的主站(Poll)和从站(Slave)。