基于 .NET 6 的ASP.NET Core启动地址配置方法及优先级顺序

基于 .NET 6 的ASP.NET Core启动地址配置方法及优先级顺序

在ASP.NET Core中,我们可以通过配置启动地址来指定应用程序的监听地址。本攻略将详细介绍基于.NET 6的ASP.NET Core启动地址配置方法及优先级顺序,并提供两个示例说明。

启动地址配置方法

以下是基于.NET 6的ASP.NET Core启动地址配置方法:

  1. 在Program.cs文件中,使用CreateHostBuilder方法创建WebHostBuilder实例。
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;

namespace MyWebApp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}
  1. 在WebHostBuilder实例中,使用UseUrls方法指定应用程序的监听地址。
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;

namespace MyWebApp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                    webBuilder.UseUrls("http://localhost:5000", "https://localhost:5001");
                });
    }
}

在上面的代码中,我们使用UseUrls方法指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

优先级顺序

当我们在应用程序中配置多个启动地址时,ASP.NET Core将按照以下优先级顺序选择启动地址:

  1. 命令行参数:我们可以在命令行中使用--urls参数指定启动地址。例如:
dotnet run --urls "http://localhost:5000;https://localhost:5001"

在上面的命令中,我们使用--urls参数指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

  1. 环境变量:我们可以在环境变量中设置ASPNETCORE_URLS变量,指定启动地址。例如:
export ASPNETCORE_URLS="http://localhost:5000;https://localhost:5001"

在上面的命令中,我们使用ASPNETCORE_URLS变量指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

  1. appsettings.json文件:我们可以在appsettings.json文件中设置Urls属性,指定启动地址。例如:
{
  "Urls": "http://localhost:5000;https://localhost:5001"
}

在上面的代码中,我们使用Urls属性指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

  1. UseUrls方法:我们可以在WebHostBuilder实例中使用UseUrls方法指定启动地址。例如:
webBuilder.UseUrls("http://localhost:5000", "https://localhost:5001");

在上面的代码中,我们使用UseUrls方法指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

示例说明

以下是两个示例,演示了如何在ASP.NET Core应用程序中配置启动地址。

示例一:使用命令行参数配置启动地址

在这个示例中,我们将使用命令行参数指定应用程序的监听地址。

  1. 打开命令行窗口。

  2. 进入ASP.NET Core应用程序的根目录。

  3. 运行以下命令,启动应用程序,并指定监听地址。

dotnet run --urls "http://localhost:5000;https://localhost:5001"

在上面的命令中,我们使用--urls参数指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

  1. 在浏览器中访问应用程序。

在应用程序启动后,我们可以在浏览器中访问应用程序,查看应用程序的运行情况。

示例二:使用appsettings.json文件配置启动地址

在这个示例中,我们将使用appsettings.json文件指定应用程序的监听地址。

  1. 打开应用程序的appsettings.json文件。

  2. 在appsettings.json文件中,添加Urls属性,指定应用程序的监听地址。

{
  "Urls": "http://localhost:5000;https://localhost:5001"
}

在上面的代码中,我们使用Urls属性指定了应用程序的监听地址为http://localhost:5000和https://localhost:5001。

  1. 在Program.cs文件中,使用CreateHostBuilder方法创建WebHostBuilder实例,并在WebHostBuilder实例中使用ConfigureAppConfiguration方法加载appsettings.json文件。
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;

namespace MyWebApp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureAppConfiguration((hostingContext, config) =>
                {
                    config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}

在上面的代码中,我们使用ConfigureAppConfiguration方法加载appsettings.json文件。

  1. 在浏览器中访问应用程序。

在应用程序启动后,我们可以在浏览器中访问应用程序,查看应用程序的运行情况。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于 .NET 6 的ASP.NET Core启动地址配置方法及优先级顺序 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • C# 9.0 特性全面总结

    C#9.0特性全面总结 引言 C#9.0 是微软在2020年末发布的最新版本,该版本引入了许多新特性,包括简化模式匹配、针对记录类型(record types)的语言支持、简化的异步流编程模型等等。本文将对C#9.0的新特性进行全面总结,并提供相应的示例代码。 最佳实践 简化模式匹配 引入 C# 6.0 引入了模式匹配,以更简洁、更可读的方式处理各种情况。C…

    C# 2023年5月15日
    00
  • C#反射之基础应用实例总结

    C#反射之基础应用实例总结 本文将介绍C#中反射的基础应用实例,并通过两个示例来说明反射的具体操作。 什么是反射? 反射是指在运行时检查类型信息并提供操作类型成员的能力。在C#中,使用反射可以动态获取类型信息、创建对象实例、调用方法和访问属性等。 反射的基本应用 获取类型信息 可以使用Type类的静态方法来获取类型信息。如下代码示例获取了Person类的类型…

    C# 2023年6月7日
    00
  • ASP.NET Core基础之中间件

    关于ASP.NET Core基础之中间件,以下是完整攻略: 什么是中间件? 中间件(Middleware)是ASP.NET Core应用程序中用于处理HTTP请求和响应的组件。中间件按照顺序依次执行,因此需要小心编写顺序,以确保它们按照预期工作。 中间件可以处理请求并返回响应,也可以将请求传递给下一个中间件,以便处理。中间件可以执行许多操作,比如日志记录、异…

    C# 2023年6月3日
    00
  • Asp.net 下载功能的解决方案

    下面详细为大家介绍“Asp.net 下载功能的解决方案”的攻略。 一、方案介绍 在 Asp.net 中,我们经常需要实现文件下载的功能,这就需要对下载的过程进行控制和管理,以保证下载的正确性和安全性。为了满足这个需求,我们可以通过以下两种方式来实现: 利用 HttpResponse 对象下载文件 我们可以通过 Response 对象将文件以指定的方式输出到浏…

    C# 2023年6月3日
    00
  • 一文搞懂C# 数据类型

    一文搞懂 C# 数据类型 C# 是一门强类型语言,不同于像 Python 这样的动态语言,需要在使用之前定义变量的数据类型。因此,在学习 C# 时,了解基本数据类型是必不可少的。本文将向您介绍 C# 中几种常用的数据类型及其用法。 基本数据类型 C# 中基本数据类型按照数据类型的大小,分为以下几类: 类型 大小(字节) 范围 示例 sbyte 1 -128 …

    C# 2023年6月1日
    00
  • C#中使用闭包与意想不到的坑详解

    C#中使用闭包与意想不到的坑详解 什么是闭包 在C#中,闭包是一个由函数和与其相关的引用环境组合而成的实体。具体地说,闭包函数可以访问其定义域之外的变量,即自由变量,这些变量与函数一同存在于一个闭包里。 C#中闭包的使用 C#中,使用闭包可以方便地共享变量和保持状态。例如下面的代码: public Action GetClosureAction() { va…

    C# 2023年6月6日
    00
  • c# WinForm 窗体之间传值的几种方式(小结)

    C# WinForm 窗体之间传值的几种方式(小结)是一篇关于C# WinForm中多个窗体之间进行数据传输的教程。下面,我将详细讲解这篇攻略的内容。 概述 该文主要讲解如何在 C# WinForm 中实现窗体之间的数据传输,我们知道在 Windows 系统下的许多应用程序中,除了主窗体以外可能会有一些其他的功能窗体,如登录窗体、设置窗体、信息弹窗等等,这些…

    C# 2023年6月7日
    00
  • C#学习进阶Hello World的17种写法代码分享

    《C#学习进阶HelloWorld的17种写法代码分享》是一篇介绍C#编程语言的入门级教程,主要通过展示“HelloWorld”程序的各种写法,介绍C#中的基本语法和常用功能。下面是该攻略的详细分析: 一、前置知识 在开始学习本篇攻略之前,读者需要先具备以下基础知识: 熟练使用C#的基本语法 熟悉C#的控制流程(if、switch、for、while等) 熟…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部