Nuget 如何在同一个库中最好地支持.net的多个版本

Nuget 如何在同一个库中最好地支持.net的多个版本,nuget,visual-studio-2015,dnx,multitargeting,project.json,Nuget,Visual Studio 2015,Dnx,Multitargeting,Project.json,我正在Visual Studio 2015中创建一个.net库,目标如下:- 对.NET2、3.5、4和4.5的支持+ PCL支持(.net 4.5+) 除了Json.net之外,没有其他依赖项 理想情况下,该库的.NET4.5+版本将使用异步,并包括返回任务等的方法 现在似乎有很多不同的方法来支持我想要做的事情,特别是在Visual Studio 2015/project.json版本中,但是从现在开始,什么是一个好的方法呢 我的库相对简单,所以我想重复使用代码,但不想破坏.NET4.5版本

我正在Visual Studio 2015中创建一个.net库,目标如下:-

  • 对.NET2、3.5、4和4.5的支持+
  • PCL支持(.net 4.5+)
  • 除了Json.net之外,没有其他依赖项
  • 理想情况下,该库的.NET4.5+版本将使用异步,并包括返回任务等的方法

    现在似乎有很多不同的方法来支持我想要做的事情,特别是在Visual Studio 2015/project.json版本中,但是从现在开始,什么是一个好的方法呢

    我的库相对简单,所以我想重复使用代码,但不想破坏.NET4.5版本


    什么是合理的项目结构,这意味着我可以利用最新的.net框架,但仍然构建对旧框架的支持。

    使用WebDev工具的Beta8,您还可以针对net2、net35、net40、net45


    您可能会在代码中使用#ifdef标志来隐藏特定版本中的某些方法。

    使用WebDev工具的Beta8,您还可以将net2、net35、net40、net45等作为目标

    您可以在代码中使用#ifdef标志来隐藏特定生成中的某些方法