如何根据框架执行不同的操作? (ASP.NET 5)

时间:2015-07-15 18:32:40

标签: c# asp.net .net migration asp.net-core

假设您必须将C#应用程序从.NET框架迁移到新的.NET Core,因为您希望拥有一些新的功能。

您拥有自己的代码库,并希望一次获得完整的工作部件,因为一次迁移将会有很多工作。主要的想法是将来完全核心

我的问题是:

  • 有没有办法检查一个框架中存在但不存在另一个框架的功能?或者根据框架执行不同的操作?

1 个答案:

答案 0 :(得分:5)

编译器指令(#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中查看它们。