繁体   English   中英

浏览器链接与Visual Studio 2015 Update 3中的ASP.NET Core v1.0

[英]Browser Link with ASP.NET Core v1.0 in Visual Studio 2015 Update 3

我正在使用Visual Studio 2015 Update 3并希望将浏览器链接功能与我的ASP.NET Core v1.0 WebApp项目一起使用...但我无法使Browser Link工作。

  1. ASP.NET Core v1.0项目是否支持Browser Link?

关于在ASP.NET Core中使用Browser Link,我找不到多少内容。

我的项目构建正常,但浏览器链接仪表板在运行或不运行调试时始终显示为“无当前连接”。

在我的project.json中,我正在导入浏览器链接依赖;

{
  "dependencies": {
    "Microsoft.Extensions.Configuration.FileProviderExtensions": "1.0.0-rc1-final",
    "Microsoft.AspNetCore.Diagnostics": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.0",
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0",
    "Microsoft.EntityFrameworkCore": "1.0.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
    "Microsoft.Extensions.Configuration.Json": "1.0.0",
    "Microsoft.Extensions.Logging": "1.0.0",
    "Microsoft.Extensions.Logging.Console": "1.0.0",
    "Microsoft.Extensions.Logging.Debug": "1.0.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
    "Microsoft.NETCore.App": {
      "version": "1.0.0",
      "type": "platform"
    },
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0"
  },

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "web.config",
      "Views",
      "appsettings.json"
    ]
  },

  "scripts": {
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}

我的web.config;

<handlers>
  <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    <add name="Browser Link for HTML" path="*.html" verb="*"
         type="System.Web.StaticFileHandler, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
         resourceType="File" preCondition="integratedMode" />
</handlers>
  1. 对于ASP.NET Core v1.0项目,我还需要做些什么来使Browser Link工作?

更新1

我已将以下内容添加到web.config的根元素中;

<appSettings>
  <add key="vs:EnableBrowserLink" value="true"/>
</appSettings>
<system.web>
  <compilation debug="true"></compilation>
</system.web>

“刷新链接浏览器”选项仍然禁用。

在此输入图像描述

但仍然无法使用Browser Link启动并在浏览器链接仪表板中查看连接。

我也在使用VS2015 Update 3。

当然,ASP.NET Core项目也支持Browserlink。

将以下代码添加到Startup.cs - > Configure方法:

  app.UseBrowserLink();

但是,如果您使用 - > .NET Core 1.0 - VS 2015 Tooling RC,那么可能是您的问题。

将appSetting“vs:EnableBrowserLink”设置为“ true

在此输入图像描述

在web.config文件中将compilation debug设置为true 当debug为false时,将禁用Browserlink!

<system.web>
  <compilation debug="true"></compilation>
</system.web>

尝试点击

“刷新的链接浏览器”,

在此输入图像描述

在我的情况下,最初没有连接出现,但刷新后! 之后,当您将鼠标悬停在刷新图标上时,会显示一个显示已连接浏览器的工具提示,例如:

在此输入图像描述

在我的project.json中,我有以下设置:

 "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",

和Browserlink必须启用:

在此输入图像描述

您可以在浏览器网络选项卡中查看它是否已加载: 在此输入图像描述

我仍然安装了旧版本的.net核心以及SDK。 我删除了这些(从控制面板),并从以下网址重新安装了工具预览2: https//www.microsoft.com/net/core#windows

而hey-presto BrowserLink开始工作。

我从使用空模板构建.NET Core MVC应用程序时遇到了同样的问题,但我发现“Web应用程序”模板对我来说是开箱即用的。

“ASP.NET核心模板”对话框:选择“空”,“Web API”或“Web应用程序”

因此,我检查了所有配置JSON文件以查看差异。

空项目 Web应用程序项目:额外的配置文件是appsettings.json和bundleconfig.json

从底部开始,两者之间的web.config实际上是相同的,因此您不必在那里添加任何内容。

在Web App项目中,Startup.cs在Configure()方法中包含以下代码:

if (env.IsDevelopment())
{
    app.UseDeveloperExceptionPage();
    app.UseBrowserLink();
}

在project.json中,您已经被告知要将以下内容放在依赖项部分中:

"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0"

bundleconfig.json只是告诉应用程序如何捆绑和缩小JavaScript,这样就不会影响BrowserLink。

现在,下一个我没有得到。 appsettings.json在空项目中不存在,并且您被告知在web.config中放置一个appsettings标记。 由于MS试图离开web.config,我想我会在appsettings.json中找到关于BrowserLink的东西。 不:

}
  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}

好吧,无论如何,此时我会尝试任何事情。 复制文本,重新启动Visual Studio,运行我的项目( 确保导航到不仅仅是静态HTML的页面 )和...

浏览器链接工作!

每当您浏览静态HTML页面时,您将丢失浏览器链接,但除此之外,它的效果非常好。 我的建议:既然你知道要做到这一点有多头疼,那就永远不要从一个空的项目开始。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM