【发布时间】:2020-05-18 08:43:26
【问题描述】:
我正在开发使用 System.IO.Ports 的多平台库。
库是用 .NET Core 3.1 编写的,并使用 Nuget 的 System.IO.Ports 4.7,显然这个版本应该已经支持 linux 了。但是当我运行主应用程序时,它仍然会导致同样的问题
System.PlatformNotSupportedException: System.IO.Ports is currently only supported on Windows.
at System.IO.Ports.SerialPort..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits)
当我在谷歌上搜索这个问题时,我发现 System.IO.Ports 4.7 和 .NET Core 3.1 的组合应该可以在 linux 上运行,但没有。
附:我还尝试了不同的库,例如crozone.SerialPorts,但是每个库都有一些无法正常工作的问题,例如invlaid parameter when running /dev/stty 等... 是否有一些库可以解决这个问题,linux/windows 使用串行端口?
非常感谢
【问题讨论】:
-
我用前面提到的库 crozone.SerialPorts 解决了我的问题。我推荐这个库,它就像一个魅力,它实际上很容易为 Windows 和 Linux 设置。
标签: c# linux .net-core serial-port