【问题标题】:Global.json and running web applicationGlobal.json 和正在运行的 Web 应用程序
【发布时间】:2016-04-21 14:48:46
【问题描述】:

我正在尝试使用 OS X 和 VS Code 从头开始​​创建一个新的 Web 应用程序,而不使用任何脚手架工具。我的出发点是 Scott Allen 关于复数视觉的教程:

https://app.pluralsight.com/library/courses/aspdotnet-core-1-0-fundamentals/table-of-contents

我的项目结构是:

global.json 文件包含

{
    "projects": [ "src" ],
    "sdk": {
        "version": "1.0.0-rc1-update2"
    }
}

project.json 当前包含

{
    "version": "1.0.0-*",
    "compilationOptions": {
        "emitEntryPoint": false
    },
    "dependencies": {
        "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
        "Microsoft.AspNet.Hosting": "1.0.0-rc1-final"
    },
    "frameworks": {
        "dnx451": {},
        "dnxcore50": {}
    },
    "commands": {
        "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.Kestrel --server.urls http://localhost:5000"
    },
    "exclude": [
        "wwwroot",
        "node_modules"
    ]
}

我已经运行dnu restore 来获取软件包,现在我想运行网络。我需要转到 Web 应用程序文件夹并运行 dnx web 才能这样做,然后应用程序就会启动

是否可以直接从根文件夹而不是 Web 应用程序文件夹运行应用程序?在这种设置中是否需要global.json 文件?以及如何更改托管环境?文档我都看过了,但是宿主环境只有在使用VS 2015的时候才清楚。

【问题讨论】:

    标签: macos asp.net-core visual-studio-code


    【解决方案1】:

    您不能简单地从根目录运行,因为可能有多个“可执行”项目。但是您可以使用 --project/-p 参数将项目传递给 dnx。

    使用ASPNET_ENVIRONMENT 环境变量设置环境。

    global.json 文件有两个用途:

    1. sdk 部分仅由 VS 提供。
    2. projects 部分一直在使用,如果您将项目放在多个文件夹中(例如 srctest),它会很有用。如果所有内容都在一个文件夹中,则不需要它。

    因此,运行 Web 应用程序的最低要求是:

    1. 项目的文件夹
    2. 一个 project.json 文件
    3. 启动文件

    【讨论】:

    • 我之前尝试过--project 参数,但它似乎不起作用...我现在看到路径必须直接指向文件,我只使用了包含@987654328 的目录的路径@。正确的命令是:dnx -p ./src/AndaronWebapp/project.json web
    • 您是否还知道如何设置红隼以在文件保存/代码更改时重建代码?或者它应该是asp核心的一个选项?我知道 dnx 有一个 watch 命令,可能在另一个 bash 线程中运行?
    猜你喜欢
    • 1970-01-01
    • 2011-01-13
    • 2011-06-16
    • 2020-06-28
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    相关资源
    最近更新 更多