c# - .NET Core 中的 'System.Diagnostics' 和 nix*es 上的 Mono 中不存在“事件”命名空间

标签 c# linux macos mono .net-core

我目前正在开发一个 C# 应用程序,它可以使用以下导入读取和查询 Windows 事件日志:

using System.Diagnostics.Eventing.Reader;

此导入在我使用 Visual Studio 2017 的 Windows 10 笔记本电脑上运行良好。但是,在 dotnet run 上运行此导入并在 mcs 上编译时出现以下错误:

Program.cs(3,26): error CS0234: The type or namespace name `Eventing' does not 
exist in the namespace `System.Diagnostics'. Are you missing an assembly 
reference? Compilation failed: 1 error(s), 0 warnings

我试过在 Mac OS X 笔记本电脑和 mono Docker container 上编译.它似乎应该在 Mac 和 Linux 上工作,因为我在他们的 GitHub repository 上找到了代码.有人知道吗?我一直试图找到一个 dll 或一个导入来使它工作,但到目前为止没有成功。任何帮助将不胜感激。

最佳答案

.NET Framework 的这一部分尚未移植到 .NET Core 2.0 中。目前正在实现中。请参阅:Port System.Diagnostics.EventLog to .NET Core这是将更多 System.Diagnostics 命名空间引入 .NET Core 的持续努力的一部分。 EventLog 将在 v2.1.0 中发布。

我不知道 System.Diagnostics.Eventing.Reader 的具体版本。

System.Diagnostics.EventLog 在 Linux 上被重定向到 syslog。也应该支持读取日志

关于c# - .NET Core 中的 'System.Diagnostics' 和 nix*es 上的 Mono 中不存在“事件”命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46915998/

相关文章:

windows - 使用支持 NFC 的手机解锁计算机

c# - WCF 序列化类型不匹配

c# - 动画完成或取消时如何将动画的最终值设置为属性?

linux - 如何让 Chef 重新加载全局路径

linux - 带选项的 Bash Shell 命令

java - 是否可以从纯 Java 访问 Mac 地址簿 API?

c# - 识别 NHibernate 代理类

c# - P/Invoke - 结构参数的简单添加

linux - optee trust os 在树莓派 3 上的实现

ios - 它只是仅限于英特尔 Mac 的 iPhone 模拟器吗?