我们有一个当前在.NET Core上运行的ASP.NET Core Web应用程序,现在需要引用内部库,这些库是为完整的.NET Framework运行而构建的 .
ASP.NET核心应用程序可以在.NET Core或完整的.NET Framework上运行 .
...更改现有ASP.NET Core项目以在完整的.NET Framework上运行需要哪些步骤?
我似乎无法在文档或Visual Studio工具中找到任何在.NET Core和完整.NET Framework之间切换的内容 .
2 回答
通过删除
frameworks
中的netcoreapp1.0
部分并将其替换为net4xy
来更改project.json应该足够了,其中x和y取决于您要定位的.Net Framework的版本,例如:net461
for .Net 4.6.1 .例如,之前:
后:
我猜你在定义这个ASP.NET核心应用程序时必须选择正确的项目类型 . 选择项目类型时,您可以选择是否要在任何地方运行.NET Core,或者在.NET Framework上运行的.NET Core(从对话框左上角的下拉列表中选择版本) .
这些应该是新项目对话框中的不同选项 .
这样,在您的引用(project.json)中,您将只看到所选的版本和框架依赖项的.NET Framework(您通常会像任何其他项目类型一样添加.NET Framework引用) .
在这个主题中有很多事情发生,因为project.json正被Microsoft抛弃,赞成MSBuild xml文件 .
这里还有一篇关于这个主题的Scott Hanselman的好文章:http://www.hanselman.com/blog/HowToReferenceAnExistingNETFrameworkProjectInAnASPNETCore10WebApp.aspx
另请注意,如果要运行可在任何位置运行的.NET Core应用程序,则无法引用完整的.NET Framework库(仅限.NET标准版) .