C# 理解新的DNX

C# 理解新的DNX,c#,asp.net,dnx,C#,Asp.net,Dnx,我正在研究DNX(ASP.NET),我在这方面面临一些问题。 在项目下,在节点“References”中,您现在可以看到“.NET Framework 4.5.1”和“.NET Platform 5.4” 现在,我正在开发一个托管在Mongo上的应用程序,当通过Nuget安装该应用程序时,该引用只会添加到.NET Framework 4.5.1中 当我构建我的应用程序时,我看到很多关于MongoDB名称空间的错误没有找到,尽管它们是彩色的并且在源代码中可用(我没有intellisense) 谁能

我正在研究DNX(ASP.NET),我在这方面面临一些问题。 在项目下,在节点“References”中,您现在可以看到“.NET Framework 4.5.1”和“.NET Platform 5.4”

现在,我正在开发一个托管在Mongo上的应用程序,当通过Nuget安装该应用程序时,该引用只会添加到.NET Framework 4.5.1中

当我构建我的应用程序时,我看到很多关于MongoDB名称空间的错误没有找到,尽管它们是彩色的并且在源代码中可用(我没有intellisense)


谁能告诉我怎么了?

这是因为您的代码是为“经典CLR”和.NET核心构建的(这是您在Visual Studio中创建项目时在文件->新建项目中的默认设置)

看起来MongoDB nuget包只适用于“经典CLR”,因此无法为核心CLR构建代码。一个选项是删除CoreCLR支持:可以通过从
project.json
文件中的“
frameworks
”部分删除它来实现


现在我对MongoDb nuget包一无所知。。。也许有一个CoreCLR版本。。。如果是这种情况,那么您需要添加对CoreCLR的依赖关系(可能有人知道是否有对CoreCLR的支持,并可以扩展我的答案…)

我已经删除了project.json文件中的.NET Core部分,所以这已经很好了。但是我是否也应该从引用包含MongoDB nuget包的项目的项目中删除核心?如果是这样,那么假设我需要从我的所有包中删除.NET core支持是正确的吗。。。因此,也无法为coreclr构建引用项目。好的,我在构建时仍然有一些错误,但现在开始有意义了。谢谢你的帮助。