使用 Visual Studio 将应用部署到文件夹Deploy an app to a folder using Visual Studio

可以使用“发布”工具将 ASP.NET、ASP.NET Core、.NET Core 和 Python 应用从 Visual Studio 发布到文件夹。You can use the Publish tool to publish ASP.NET, ASP.NET Core, .NET Core, and Python apps to a folder from Visual Studio. 对于 Node.js,支持这些步骤但用户界面不同。For Node.js, the steps are supported but the user interface is different.

先决条件Prerequisites

  • 安装有 Visual Studio 2019 并具有所选语言相应的工作负载:Visual Studio 2019 installed with the appropriate workloads for your language of choice:
    • ASP.NET:ASP.NET 和 Web 开发ASP.NET: ASP.NET and web development
    • Python:Python 开发Python: Python development
    • Node.js:Node.js 开发Node.js: Node.js development
  • 安装有 Visual Studio 2017并具有所选语言相应的工作负荷:Visual Studio 2017 installed with the appropriate workloads for your language of choice:
    • ASP.NET:ASP.NET 和 Web 开发ASP.NET: ASP.NET and web development
    • Python:Python 开发Python: Python development
    • Node.js:Node.js 开发Node.js: Node.js development
  • ASP.NET、ASP.NET Core、Python 或 Node.js 项目。An ASP.NET, ASP.NET Core, Python, or Node.js project. 如果还没有项目,请选择下方选项:If you don't already have a project, select an option below:

    • ASP.NET Core:按照快速入门:使用 Visual Studio 创建第一个 ASP.NET Core Web 应用的说明操作,或者使用以下步骤:ASP.NET Core: Follow Quickstart: Use Visual Studio to create your first ASP.NET Core web app, or use the following steps:

      在 Visual Studio 2019 中的“启动”窗口上,选择“新建项目”。In Visual Studio 2019, choose Create a new project in the start window. 如果开始窗口未打开,请选择“文件” > “开始窗口” 。If the start window is not open, choose File > Start Window. 在搜索框中键入“Web 应用”,选择“C#”作为语言,然后选择“ASP.NET Core Web 应用程序(模型-视图-控制器)”,再选择“下一步”。Type web app in the search box, choose C# as the language, then choose ASP.NET Core Web Application (Model-View-Controller), and then choose Next. 在下一个屏幕上,将项目命名为“MyASPApp”,然后选择“下一步”。On the next screen, name the project MyASPApp, and then choose Next.

      选择建议的目标框架 (.NET Core 3.1) 或 .NET 5,然后选择“创建”。Choose either the recommended target framework (.NET Core 3.1) or .NET 5, and then choose Create.

      在 Visual Studio 2017 中,选择“文件” > “新建项目”,然后选择“Visual C#” > “.NET Core”,再选择“ASP.NET Core Web 应用程序” 。In Visual Studio 2017, choose File > New Project, select Visual C# > .NET Core, then select ASP.NET Core Web Application. 系统出现提示时,请选择“Web 应用程序(模型-视图-控制器)”模板,确保选中“无身份验证”,然后选择“确定”。When prompted, select the Web Application (Model-View-Controller) template, make sure that No Authentication is selected, and then select OK.

    • Python:请遵照快速入门:使用 Visual Studio 创建首个 Python Web 应用进行操作,或使用“文件” > “新建项目”,选择“Python”,然后选择“Flask Web 项目”。Python: Follow Quickstart: Create your first Python web app using Visual Studio, or use File > New Project, select Python, then select Flask Web Project.

    • Node.js:请遵照快速入门:使用 Visual Studio 创建首个 Node.js 应用进行操作,或使用“文件” > “新建文件”,选择“JavaScript”,然后选择“空白 Node.js Web 应用程序”。Node.js: Follow Quickstart: Use Visual Studio to create your first Node.js app, or use File > New Project, select JavaScript, then select Blank Node.js Web Application.

  • 请确保在执行部署步骤之前,使用“生成”>“生成解决方案”菜单命令生成项目。Make sure you build the project using the Build > Build Solution menu command before following the deployment steps.

备注

如果需要将 Windows 桌面应用程序发布到文件夹,请参阅使用 ClickOnce 部署桌面应用(C# 或 Visual Basic)。If you need to publish a Windows desktop application to a folder, see Deploy a desktop app using ClickOnce (C# or Visual Basic). 对于 C++/CLR,请参阅使用 ClickOnce 部署本机应用,或者对于 C/C++,请参阅使用安装项目部署本机应用For C++/CLR, see Deploy a native app using ClickOnce or, for C/C++, see Deploy a native app using a Setup project.

备注

如果你需要将 .NET Core 3.1 或更高版本的 Windows 桌面应用程序发布到文件夹,请参阅使用 ClickOnce 部署 .NET Windows 应用程序If you need to publish a .NET Core 3.1, or newer, Windows desktop application to a folder, see Deploy a .NET Windows application using ClickOnce.

部署到本地文件夹Deploy to a local folder

  1. 在解决方案资源管理器中,右键单击该项目并选择“发布”(或使用“生成” > “发布”菜单项) 。In Solution Explorer, right-click the project and choose Publish (or use the Build > Publish menu item).

    解决方案资源管理器中项目上下文菜单上的“发布”命令The Publish command on the project context menu in Solution Explorer

  2. 如果先前配置了任何发布配置文件,则“发布”窗口会显示。If you have previously configured any publishing profiles, the Publish window appears. 选择“新建”。Select New.

  3. 在“发布”窗口中,选择“文件夹”。In the Publish window, select Folder.

    选择文件夹作为发布目标Choose folder as a publish target

    如果要部署 .NET Core 3.1 或更高版本的 Windows 应用程序,则可能需要在“特定目标”窗口中选择“文件夹” 。If you are deploying a .NET Core 3.1, or newer, Windows Application you may need to select Folder in the Specific target window.

    选择文件夹作为特定目标Choose folder as specific target

    如果你希望使用 ClickOnce 发布 .NET Core 3.1 或更高版本的 Windows 应用程序,请参阅使用 ClickOnce 部署 .NET Windows 应用程序If you wish to publish a .NET Core 3.1, or newer, Windows application with ClickOnce, see Deploy a .NET Windows application using ClickOnce.

  4. 输入路径,或选择“浏览”以指定文件夹。Enter a path or select Browse to specify a folder.

    指定文件夹的路径Specify the path to the folder

    单击“完成”保存配置文件。Click Finish to save the profile.

    显示配置文件摘要的“发布”属性窗格

  5. 选择“发布”。Select Publish. Visual Studio 将生成项目并将其发布到指定文件夹。Visual Studio builds the project and publishes it to the specified folder.

    项目属性“发布”窗格出现,显示配置文件摘要。The project properties Publish pane appears, showing a profile summary.

    显示配置文件摘要的“发布”属性窗格

  6. 要配置部署设置,请选择发布文件摘要中的“编辑”并选择“设置”选项卡 。To configure deployment settings, select Edit in the publish profile summary and select the Settings tab.

    你看到的设置取决于你的应用程序类型。The settings you see depend on your application type. 下图显示 ASP.NET Core 应用的示例设置。The following illustration shows example settings for an ASP.NET Core app.

    配置文件设置Profile settings

    有关使用 .NET 选择设置的更多帮助,请参阅以下内容:For additional help to choose settings in .NET, see the following:

  7. 配置选项(如是部署“调试”配置还是“发布”配置),然后选择“保存”。Configure options such as whether to deploy a Debug or Release configuration, and then select Save.

  8. 若要重新发布,请选择“发布”。To republish, select Publish.

可按照任何喜欢的方式部署已发布的文件。Deploy the published files in any way you like. 例如,可以使用简单的复制命令将其打包为 .zip 文件,或者使用选择的任何安装包进行部署。For example, you can package them in a .zip file, use a simple copy command, or deploy them with any installation package of your choice.

后续步骤Next steps

对于 .NET 应用:For .NET apps: