假设您必须将 C# 应用程序从 .NET 框架迁移到新的 .NET Core,因为您希望拥有其中的一些新功能。
您拥有代码库,并且希望一次获得完全可用的部分,因为一次性迁移需要大量工作。主要思想是在未来成为完全核心。
我的问题是:
- 有没有一种方法可以检查一个框架中存在但另一个框架中不存在的功能?或者根据框架执行不同的操作?
最佳答案
有编译器指令 (#if) 用于检查与两个框架相对应的符号。也可以同时针对这两个框架。
例如,如果您的代码使用了 .NET Core 中不可用的资源,则可以将它们包含在条件编译指令中。
编译器指令的使用示例...
#if DNX451
// Do something
#elif DNXCORE50
// Do something
#else
#error No implementation for this target
# endif
其中 DNX451
代表 .NET Framework,DNXCORE50
代表 .NET Core。
查看他们的实际行动 on this video at 36 min .
关于c# - 如何根据框架执行不同的 Action ? (ASP.NET 5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31438371/