当 ASP.NET Core 视图位于某个区域时,Visual Studio 不会部署它们

Nik*_*tov 3 asp.net-mvc-areas asp.net-mvc-views webdeploy visual-studio-2015 asp.net-core

设置

  • Visual Studio 2015(包含更新 3 和截至今天的最新修补程序)
  • 已安装 .NET Core SDK(预览版 2)
  • 创建一个新的 ASP.NET Core 项目
  • 添加一个新区域,注册它并在其中添加视图
  • 使用 Visual Studio 中的 Web 部署将其部署到 IIS

我的project.json的一部分

"publishOptions": {
  "include": [
    "wwwroot",
    "Views",
    "Areas/**/Views",
    "appsettings.json",
    "web.config"
  ]
},
Run Code Online (Sandbox Code Playgroud)

我的发布个人资料

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>MSDeploy</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish>http://somedomain/</SiteUrlToLaunchAfterPublish>
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <PublishFramework>netcoreapp1.0</PublishFramework>
    <UsePowerShell>True</UsePowerShell>
    <EnableMSDeployAppOffline>True</EnableMSDeployAppOffline>
    <MSDeployServiceURL>http://someip</MSDeployServiceURL>
    <DeployIisAppPath>sitename</DeployIisAppPath>
    <RemoteSitePhysicalPath />
    <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
    <MSDeployPublishMethod>RemoteAgent</MSDeployPublishMethod>
    <EnableMSDeployBackup>False</EnableMSDeployBackup>
    <UserName>username</UserName>
    <_SavePWD>True</_SavePWD>
    <PublishDatabaseSettings>
      <Objects xmlns="" />
    </PublishDatabaseSettings>
    <ADUsesOwinOrOpenIdConnect>False</ADUsesOwinOrOpenIdConnect>
    <AuthType>NTLM</AuthType>
  </PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

问题

成功部署后,服务器中缺少区域视图。没有Area文件夹,该区域的视图也不位于Views文件夹中。所有其他视图(区域外)均存在。

我做错了什么还是这个问题是已知的?有人遇到同样的问题吗?如果有,解决方案是什么?

Nik*_*tov 5

https://github.com/aspnet/Mvc/issues/4645上所述的临时修复是添加

"**/*.cshtml",
Run Code Online (Sandbox Code Playgroud)

publishOptions.include

在我的案例中工作过。