【问题标题】:How to Understand the "DNX SDK" and the "Framework" in the Asp.Net 5 Project如何理解 Asp.Net 5 项目中的“DNX SDK”和“Framework”
【发布时间】:2015-09-12 01:40:36
【问题描述】:

我对下一版 ASP.Net 中的一些术语有些困惑

  1. 我们可以在DNVM中设置默认的dnx版本
  2. 我们可以在解决方案的 global.json 中指定 dnx sdk 版本
  3. 我们可以在项目中设置框架(dnx451,dnxcore50)
  4. 我们可以在 web 应用项目的属性页上指定运行时。

这些设置如何在开发机器(即安装了很多版本的 dnx)和生产机器上工作?

谢谢 弗兰克

【问题讨论】:

  • 你有什么版本的 ASP.NET Beta?你更新到最新的 1.0.0-Beta7 了吗?在生产中,事情很像在开发中。 DNX SDK 作为应用程序的一部分提供,而不是作为 Windows 本身的组件提供。这是 DNX 存在的核心原因。
  • 谢谢!我正在使用 beta7,但我只是不明白 global.json 中的 sdk 版本与 project.json 中的框架与项目属性页面上的运行时是什么
  • 项目属性页控制 IDE 中的工具。我相信 global.json 的内容旨在成为大师。为什么你会想要让这些合法地不同,我不明白。我认为它们必须始终相同,因此,我相信,如果工具(ASP.NET 的 IDE 插件)让它们进入不同的地方,那就是一个错误。但我只是一个相当新的用户,所以我不确定。

标签: dnx


【解决方案1】:

运行时故事

  • 关于 (1) DNVM 设置项目执行时使用的默认运行时(如果运行时未作为本地部署包提供)。
  • 关于 (2) global.json 指定打开解决方案时在 Visual Studio 中使用的运行时(因为可能存在具有许多不同 sdk 的项目)(Design Notes ASP.Net Team)。据我了解,除了开发之外没有其他用途。
  • 关于(4) 如cmets中所说,该项目的属性页基本上就是你在这个项目中开始调试时用来调试的框架,但似乎global.json是master。据我了解,除了开发之外没有其他用途。

除了这三件事之间的设计说明之外,我还没有找到任何合适的文档。

构建故事

  • 关于 (3)。 project.json 中的指定框架(dnx451、dnxcore50)是 nuget 包的构建目标(其中包含两个目标的单独 dll)。该库为 dnx451 和 dnxcore50 环境单独构建,并打包到一个 nuget 包中。确保您也了解与“dnx451”和“dnxcore50”不同的目标“dotnet”。部署应用程序后,DNX 将从 nuget 包中获取正确的 dll(或在之前的整个应用程序的打包过程中)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多