Found 6 packages
Create and manage FedEx Shipment
some description of this package
基于MQTTNet二次开发的MQTTClient(MQTT客户端) ***************************说明************************************************** 1.0.2: 去掉 Microsoft.Extensions.DependencyInjection 的依赖避免出现兼容性问题 1.0.3 解决多层继承前端无法获取到数据的问题 1.0.4 1、增加标识(int类型)使用多个MQTTClient时 使各个连接对象过滤掉不必要监听的主题 2、基类中增加连接对象 可通过this.Client 直接调用 3、增加 PublishBinary 发布函数 4、增加 MpscChannel 信号通道 用来跨线程通讯 1.0.6 1、RouterAttribute 标识位放在最后一位 2、MQTTNetClient InitMQTTClient 函数中增加MQTT版本选择 3.10 3.11 5.00 1.0.7 1、优化对外委托部分 1.0.8 1、订阅委托时增加路由模块 1.0.9 1、增加Publish重载函数 作用:同步返回发布消息后的返回 2.0.1 1、目标框架更新为.NET 8.0;.NET 9.0版本(MQTTNet v5.0.1.1416 仅支持.NET >=8.0) 2.0.2 1、在.NET 8.0;.NET 9.0版本基础上兼容netstandard2.1 2、增加异常回调 ******************************************************************************** 使用示例(示例所用为WorkService): ******************************************************************************** Program.cs using example; using MQTTNet.Client; var builder = Host.CreateApplicationBuilder(args); var service = builder.Services; service.AddHostedService<Worker>(); var host = builder.Build(); host.Run(); ******************************************************************************** Worker.cs using MQTTNet.Client.Attributes; using MQTTNet.Client.Model; using MQTTNet.Client.Common; using MQTTNet.Client.Enums; namespace example { public class Worker : BackgroundService { private readonly ILogger<Worker> _logger; public Worker(ILogger<Worker> logger) { _logger = logger; } IMQTTNetClient client = null; protected override async Task ExecuteAsync(CancellationToken stoppingToken) { IMQTTNetClient client = new MQTTNet.Client.MQTTNetClient("127.0.0.1", 6688, UserName: "admspay", Password: "admscarpays", Identity: 2); if (await client.Connection()) _logger.LogInformation("连接成功"); await client.Subscribe("+/device/message/up/ivs_result", "GetData", typeof(aaaa)); IMQTTNetClient clients = new MQTTNet.Client.MQTTNetClient("127.0.0.1", 9900, UserName: "", Password: "",Identity: 0); await clients.Connection(); } } public class aaaa : ReceivedModel { public async Task GetData(test resultR3) { if (resultR3 == null) return; Console.WriteLine($@"a:{resultR3.ObjectToJson()}"); Console.WriteLine($@"主题:{this.Topic}"); Console.WriteLine($@"原始字符串:{this.Content}"); await Task.CompletedTask; } } public class MQTTData : ReceivedModel { [Router("+/device/message/up/ivs_result" ,_qos:QOSEnum.ExactlyOnce, _identity:0)] public async Task GetData(test resultR3) { if (resultR3 == null) return; Console.WriteLine($@"a:{resultR3.ObjectToJson()}"); Console.WriteLine($@"主题:{this.Topic}"); Console.WriteLine($@"原始字符串:{this.Content}"); await Task.CompletedTask; } [Router("+/Synchronous/VehicleRegist", _qos: MQTTNet.Client.Enums.QOSEnum.ExactlyOnce,_identity: 2)] public async Task Env_VehicleRegistMQTT(ReceeivedProgramdata obj) { this.Client.Publish(obj.ReTopic, new { Tag = 0, Message = "123321", Description = string.Empty, Total = 0 }.ObjectToJson()); } } public class test { public Guid strc { get; set; } public string? strs { get; set; } public string? stra { get; set; } public List<test1> array { get; set; } } }
Stravaig Clock is a way of getting contemporary date and time information in an application that is easy to unit test without the need to rely on tolerances. Built on Thursday, 10 August 2023 at 21:23:39 +00:00. Build run details at: https://github.com/Stravaig-Projects/Stravaig.Clock/actions/runs/5826236894 Release notes at: https://github.com/Stravaig-Projects/Stravaig.Clock/releases/tag/v0.2.0
Stravaig Clock Testing is a set of test fakes for use with Stravaig.Clock. Built on Thursday, 10 August 2023 at 21:23:49 +00:00. Build run details at: https://github.com/Stravaig-Projects/Stravaig.Clock/actions/runs/5826236894 Release notes at: https://github.com/Stravaig-Projects/Stravaig.Clock/releases/tag/v0.2.0
最好使用netcore中,自己在传统类库中不太好用 //创建opcua server管理类 OpcuaManagement management = new OpcuaManagement(); //注册数据提供者,这里是测试类 management.RegistOPcUaDataProvider(new Test_OPCUaProvideData()); Console.WriteLine("OPCUa服务器启动..."); Console.ReadKey(); 需要配合【opcUaConfig.xml】配置文件使用 <?xml version="1.0" encoding="utf-8" ?> <root> <!--服务器配置--> <service> <ApplicationName>MrWangOPCUa</ApplicationName> <BaseAddresses> <li>opc.tcp://127.0.0.1:8020/</li> <li>https://127.0.0.1:8021/</li> </BaseAddresses> </service> <!--树形节点配置--> <nodesConfig> <nodeCfg name="根节点" nodeId="1"> <directory name="子目录1" nodeId="11"> <tag name="子节点1" nodeId="111" /> <tag name="子节点2" nodeId="112" dataType="string"/> <tag name="子节点3" nodeId="113"/> </directory> <directory name="PLC1" nodeId="12"> <tag name="温度" nodeId="121" dataType="number" /> <tag name="湿度" nodeId="122" dataType="number" /> <tag name="备用" nodeId="123" dataType="string"/> </directory> </nodeCfg> </nodesConfig> </root>