我有一个 .NET Core 控制台应用程序。我的目标是能够有条件地DLLImport
调用一个函数并调用它,但仅限于 Windows 运行时。
我想也许如果我可以访问csproj
文件中的运行时标识符,我可以有条件地为该运行时定义一个常量,然后在我的 c# 中我可以包围 DLLImport 并调用#if
/#endif
块。
csproj
是否可以根据构建项目的运行时在 a 中设置编译常量?这专门针对面向 .NET Core 的 SDK 样式的项目格式(以 开头<Project Sdk="Microsoft.NET.Sdk">
)。
注意:这个问题很接近,但适用于project.json
风格项目。
或者,是否有更好的方法来实现我的目标?