在ASP.NET Core 2.0中启动节点时出错

时间:2017-09-30 04:40:02

标签: azure visual-studio-2017 azure-devops azure-web-sites azure-pipelines

我首先使用vs2017创建一个vanilla asp.net core 2.0网站。然后,我通过使用以下行更新startup.cs来添加节点:

$appeal->stages()->wherePivot('expiration_date', '<', $now)->get()

我创建了一个返回一些数据的视图,当我在本地运行它时,它可以工作。这是代码:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();

        services.AddNodeServices(options => {
            options.LaunchWithDebugging = true;
            options.DebuggingPort = 9229;
        });
    }

我的myNodeModule.js如下:

    public async Task<IActionResult> NodeTest([FromServices] INodeServices nodeServices)
    {

        ViewData["ResultFromNode"] = 
            await nodeServices.InvokeAsync<string>("NodeSrc/myNodeModule.js");
        return View(viewName: "NodeTest");

    }

当我在vs2017本地运行时,它可以工作。当我使用VSTS并进行部署时,即使在向开发中添加ASPNETCORE_ENVIRONMENT的流程变量之后,当我尝试浏览到该页面时仍然会出现错误。我在下面的错误。

我的两个问题是:   1.如何报告更好的错误   2.如何在调试和生产模式下使节点在服务器上运行。

错误:

module.exports = function (callback) {
    var message = 'Hello from Node js script at ' +
        new Date().toString() + ' process.versions ' +
        process.version;
    callback(/* error */ null, message);
};

1 个答案:

答案 0 :(得分:0)

您需要在复制到JS文件属性的输出目录中指定复制如果更新(右键单击JS文件=&gt;属性=&gt;将复制更改为输出目录,如果更新则复制)。

BTW:它在本地工作正常而不更改Copy to Output目录,它在项目根路径中查找文件。用Using Node Services in ASP.NET Core文章进行测试

关于Azure Web应用程序中的开发环境,您可以在Web应用程序的应用程序设置中执行此操作:

  1. 转到azure portal
  2. 选择您的网络应用
  3. 选择应用程序设置
  4. 在App Settings中添加带有开发值的ASPNETCORE_ENVIRONMENT。