确定当前在其中运行的框架的上下文

时间:2019-06-26 12:26:41

标签: .net-standard

我有一个.net标准库,可以从.net Framework 4.x程序或.net核心程序中调用。当代码在.net标准库中执行方法时,我想检查一下从中调用它的框架的上下文。更具体的说:如果从4.x内调用,我想确保4.x设置标准库中静态变量的值,而从核心调用时,我想确保未设置它。

1 个答案:

答案 0 :(得分:0)

您可以使用#if preprocessor directive处理此问题。文章中列出了目标框架的名称,因此您可以执行类似于

的操作
#if NET48 || NET472 || ...
    staticVariable = "SomeStaticValue";
#endif

不过,作为一个小的建议,如果可以在使用它的程序中设置该变量,则可能会更容易。然后可以将其传递到库中,并在需要时使用。