Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 防止.NET版本更改_C#_.net - Fatal编程技术网

C# 防止.NET版本更改

C# 防止.NET版本更改,c#,.net,C#,.net,所以我有一个巨大的解决方案里面的项目 我的项目是.NET3.5,其余的解决方案是4.7.1。 我的目标是,如果其他人试图从3.5版更新我的项目,它将无法编译 tl;博士 如何读取项目的.net版本 如何有条件地使编译失败 像这样使用条件编译 #if !NET35 #error This project requires .NET 3.5 framework #endif 你为什么要这么做?您可以使用条件编译,但如果他们正在更新框架版本,那么您可能无法在代码中执行任何无法覆盖/删除的操作您宁愿花

所以我有一个巨大的解决方案里面的项目

我的项目是.NET3.5,其余的解决方案是4.7.1。 我的目标是,如果其他人试图从3.5版更新我的项目,它将无法编译

tl;博士

  • 如何读取项目的.net版本
  • 如何有条件地使编译失败

  • 像这样使用条件编译

    #if !NET35
    #error This project requires .NET 3.5 framework
    #endif
    

    你为什么要这么做?您可以使用条件编译,但如果他们正在更新框架版本,那么您可能无法在代码中执行任何无法覆盖/删除的操作您宁愿花费未知的时间来阻止某人执行最终不可避免需要的操作,与其花费未知的时间来修复目前意味着项目不应该升级的任何问题,还不如别无选择,它是一个与我无法控制的第三方软件交互的dll。医学成像很有趣!另外,我不明白为什么会出现重复,因为我显然不知道.NET版本的条件编译,但我得到的答案是“你的意思是”。奇怪的是,我把它理解为
    #如果你想编译