【问题标题】:ASP.Net core publishes an empty folderASP.Net 核心发布一个空文件夹
【发布时间】:2018-07-19 10:51:34
【问题描述】:

编辑:我注意到 bin\Debug\net461\Publish 中有一个文件夹包含所需的一切,我尝试检查这种方式使用的配置:

#if DEBUG
        ViewData["Message"] = "DEBUG";
#else
        ViewData["Message"] = "else";
#endif

网页显示“DEBUG”...

原始问题:

ASP.Net 核心发布一个空文件夹:我没有 ASP.Net 的问题,只有 ASP.Net 核心。下面是我在两个平台上创建发布配置文件的方法:

创建配置文件 => 文件夹 => bin\Release\PublishOutput => 创建配置文件 => 发布

使用 Asp.Net 它会生成这个 .pubxml :

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0"     xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <PublishProvider>FileSystem</PublishProvider>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>bin\Release\PublishOutput</publishUrl>
    <DeleteExistingFiles>False</DeleteExistingFiles>
  </PropertyGroup>
</Project>

使用 Asp.Net 输出:

2>Web App was published successfully file:///Path/bin/Release/PublishOutput
2>
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========

使用 Asp.Net Core,它会生成这个 .pubxml:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <PublishProvider>FileSystem</PublishProvider>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <ProjectGuid>32b7ffef-9cf4-471a-ab1a-ec3c69d0dd13</ProjectGuid>
    <publishUrl>bin\Release\PublishOutput</publishUrl>
    <DeleteExistingFiles>False</DeleteExistingFiles>
  </PropertyGroup>
</Project>

使用 Asp.Net Core 的输出:

Web App was published successfully file:///Path/bin/Release/PublishOutput
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========

我在 3 台计算机上尝试过,我仍然得到一个带有 Asp.Net Core 的空文件夹。

【问题讨论】:

  • 这不是直接回答你的问题,而是解决你的问题:发布时使用dotnet CLI,cd到你的.csproj或.sln的目录,然后运行@987654329 @在你最喜欢的终端中
  • 我忘了在我的问题中添加“请避免使用命令行”,但经过几个小时的努力,您的评论是目前唯一的解决方案,您能否发表您的评论作为答案,以便我可以接受吗?
  • 我没有回答你的问题,只是解决了它。我认为它不应该被标记为答案。对于 dotnet core,我的建议是使用它的 CLI。它实际上非常简单直观。许多现代 CLI 工具都是。
  • 即使有人找到了这个 VS 错误的解决方案,微软也会修复这个问题,我的问题将在不到几个月的时间内过时,只需发表您的评论作为答案。

标签: asp.net-core publishing


【解决方案1】:

这不是直接回答你的问题,而是解决你的问题:发布时使用dotnet CLI,cd到你的.csproj或.sln目录,然后运行:

dotnet publish -c Release -o "path/to/output"

【讨论】:

    猜你喜欢
    • 2018-07-28
    • 1970-01-01
    • 2017-07-22
    • 2019-03-16
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 2017-06-26
    • 1970-01-01
    相关资源
    最近更新 更多