iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何设置ASP.Net Core MVC开发环境
  • 135
分享到

如何设置ASP.Net Core MVC开发环境

2023-06-29 03:06:55 135人浏览 安东尼
摘要

这篇文章主要介绍了如何设置asp.net Core mvc开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在实际开发中, 我们的系统往往会是至少两个

这篇文章主要介绍了如何设置asp.net Core mvc开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

在实际开发中, 我们的系统往往会是至少两个以上的运行环境, 最基本的就是, 开发环境和运营环境, 体系完整的公司, 还会有测试环境, 预发布环境, 和一些自定义环境等等, 这些环境使用的配置或是一些参数肯定是不一样的, 我们不可能为一个环境准备一份代码, 我们可以通过环境配置, 和 一些 if 判断, 就可以做到环境的自动切换, 下面就仔细说说.

我们先通过默认的.net core MVC设置, 感受一下. 以前的代码找不到了, 新建一个空的.Net Core MVC项目吧.

PS: IDE我已经使用VS2019

如何设置ASP.Net Core MVC开发环境

建好之后, 我们打开Startup.cs代码文件, 看Configure方法, 我相信, 有的博友已经发现了, 里面的第一行代码是个if, 意思就是判断当前环境是不是开发环境, 看单词的字面意思也是这个意思, 所以学好英文对开发程序有很大的buff加成啊~~~

对于if里的是什么, 上一节已经讲过, 不再称述.

由此我们得出, 控制环境和判断环境, 都是在Configure方法中, 注入的IHostingEnvironment接口对象进行的. 这里我说一下, 系统默认提供的几个判断环境的方法. 我们使用env.Is, VS的智能提示, 可以得到下面四个方法, 如图:

如何设置ASP.Net Core MVC开发环境

  • IsDevelopment方法大家已经知道了, 判断当前是不是开发环境.

  • IsProduction方法, 判断当前是不是运营(正式)环境

  • IsStaging方法, 判断当前是不是预运行环境

  • IsEnvironment方法, 根据传入的环境名称, 判断是不是当前环境类型 (用于自定义环境判断)

我们修改一下Configure方法的代码, 修改后为:

public void Configure(IApplicationBuilder app, IHostingEnvironment env){    if (env.IsDevelopment())    {        app.UseDeveloperExceptionPage();    }     app.Run(async (context) =>    {        context.Response.ContentType = "text/plain;charset=utf-8";  //防止WriteAsync方法输出中文乱码        if (env.IsDevelopment())        {            await context.Response.WriteAsync("开发环境", Encoding.UTF8);        }        else if (env.IsProduction())        {            await context.Response.WriteAsync("运营环境", Encoding.UTF8);        }        else if (env.IsStaging())        {            await context.Response.WriteAsync("预发布环境", Encoding.UTF8);        }        else        {            await context.Response.WriteAsync("自定义环境", Encoding.UTF8);        }    });}

然后F5运行, 浏览器会不出意外的输出: "开发环境"

如何设置ASP.Net Core MVC开发环境

没毛病, 我们修改一下编译环境, 把Debug修改为Release, 然后生成, 如图:

如何设置ASP.Net Core MVC开发环境

然后生成项目, 生成成功之后, 到项目的bin/Release/netcoreapp2.2目录下, 打开CMD, 执行dotnetUnit1.dll命令, 就会是这样的, 如图:

如何设置ASP.Net Core MVC开发环境

我们在浏览器输入Http://localhost:5000/回车, 不出意外, 会输出: 运营环境 四个大字.

以上的流程, 就演示了最基本的开发环境和运营环境的配置和判断. 下面我们演示自定义环境. 我们接着修改代码, 为当前环境设置个名字, 代码如下

public void Configure(IApplicationBuilder app, IHostingEnvironment env){    if (env.IsDevelopment())    {        app.UseDeveloperExceptionPage();    }     env.EnvironmentName = "Cus";    //设置自定义环境名称     app.Run(async (context) =>    {        context.Response.ContentType = "text/plain;charset=utf-8";  //防止WriteAsync方法输出中文乱码        if (env.IsDevelopment())        {            await context.Response.WriteAsync("开发环境", Encoding.UTF8);        }        else if (env.IsProduction())        {            await context.Response.WriteAsync("运营环境", Encoding.UTF8);        }        else if (env.IsStaging())        {            await context.Response.WriteAsync("预发布环境", Encoding.UTF8);        }        else        {            await context.Response.WriteAsync("自定义环境", Encoding.UTF8);        }    });}

F5运行项目, 浏览器毫不意外的输出了: 自定义环境

如果我们要输出预发布环境的话, 只需要把EnvironmentName 属性的值改成 "Staging" 即可, 这里不做演示, 自行尝试, 设置代码如下:

env.EnvironmentName = "Staging"; //设置为预发布环境

发设置为Staging和其它值的区别就是系统系统了一个IsStaging方法

为了更加直观的演示自定义环境, 我们把else改一下, 改完之后的代码如下:

public void Configure(IApplicationBuilder app, IHostingEnvironment env){    if (env.IsDevelopment())    {        app.UseDeveloperExceptionPage();    }     env.EnvironmentName = "Cus";    //设置自定义环境名称     app.Run(async (context) =>    {        context.Response.ContentType = "text/plain;charset=utf-8";  //防止WriteAsync方法输出中文乱码        if (env.IsDevelopment())        {            await context.Response.WriteAsync("开发环境", Encoding.UTF8);        }        else if (env.IsProduction())        {            await context.Response.WriteAsync("运营环境", Encoding.UTF8);        }        else if (env.IsStaging())        {            await context.Response.WriteAsync("预发布环境", Encoding.UTF8);        }        else        {            if (env.IsEnvironment("Cus"))            {                await context.Response.WriteAsync("自定义环境: Cus", Encoding.UTF8);            }            else if (env.IsEnvironment("Cus1"))            {                await context.Response.WriteAsync("自定义环境: Cus1", Encoding.UTF8);            }            else            {                await context.Response.WriteAsync($"自定义环境: {env.EnvironmentName}", Encoding.UTF8);            }        }    });}

具体运行效果和预计的一样, 会输出对应的自定义环境

但是实际开发过程中, 我不推荐在代码里面修改当前环境, 而且通过项目的环境变量设置对应的环境, 具体修改方法如下

如何设置ASP.Net Core MVC开发环境

点开Properties

打开launchSettings.JSON

修改ASPNETCORE_ENVIRONMENT的值.

我们修改EnvironmentName属性的代码删掉, 修改launchSettings.json的配置为Cus, 运行是什么效果, 修改后的效果如图

如何设置ASP.Net Core MVC开发环境

没出任何以外, 浏览器输出的是自定义环境: Cus, 改成其它的值, 就输入对应的自定义环境, 修改为Development就是开发环境,Staging就是预运营环境,Production就是运营环境

可能有人就要问了, 你只修改了上面的ASPNETCORE_ENVIRONMENT, 下面还有一个ASPNETCORE_ENVIRONMENT配置, 没修改, 怎么也可以. 别急, 马上就说明

.net Core MVC程序, 提供了两种托管方式, 一种是通过IIS托管, 一种是自托管, 我们刚刚修改的环境, 只修改了IIS托管模式, VS默认又是IIS调试, 所以, 会有效果

如果使用自托管模式调试或发布运行程序, 则修改下面的Unit1节点的配置即可. 当然, VS也提供了调试方式, 切换方法, 点击运行模式即可, 如图:

如何设置ASP.Net Core MVC开发环境

选择Unit1, 就是自托管模式啦~ , 然后F5运行, 浏览器输出的依然是开发环境, 虽然IIS配置的是Cus环境, 但是Unit1自托管没有修改, 我们修改一下Unit1的环境试试, 这里我修改为Cus100, 然后选择Unit1调试, F5运行, 浏览器输出的就是

如何设置ASP.Net Core MVC开发环境

没有任何问题

如果你觉得这种修改方式麻烦, 还有一种界面修改方法

我们在项目上右键 --> 属性 --> 调试, 就能看到对应的配置了, 如图:

如何设置ASP.Net Core MVC开发环境

当前是自托管模式, 我修改为Cus100, 这里显示的就是Cus100, 点击上面的配置文件, 还可以修改不同的托管模式的配置:

如何设置ASP.Net Core MVC开发环境

这里就不做演示了, 修改效果和直接修改launchSettings.json文件是一样的

PS: 我们已经把两种托管模式的环境都设置为了默认的Development, 开发环境.

上面已经讲完了环境的配置和切换, 下面讲讲根据不同的环境, 自动读取不同的配置文件, 我们先修改一下代码, 让输入的文件是从appsettings.json配置里面读取的, 修改后的Startup类代码如下:

using Microsoft.AspNetCore.Builder;using Microsoft.AspNetCore.Hosting;using Microsoft.AspNetCore.Http;using Microsoft.Extensions.Configuration;using Microsoft.Extensions.DependencyInjection;using System.Text; namespace Unit1{    public class Startup    {        private readonly IConfiguration _Configuration;         /// <summary>        ///        /// </summary>        /// <param name="configuration">注入或者配置文件的接口对象</param>        public Startup(IConfiguration configuration)        {            this._Configuration = configuration;        }         // This method gets called by the runtime. Use this method to add services to the container.        // For more infORMation on how to configure your application, visit https://Go.microsoft.com/fwlink/?LinkID=398940        public void ConfigureServices(IServiceCollection services)        {        }         // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.        public void Configure(IApplicationBuilder app, IHostingEnvironment env)        {            if (env.IsDevelopment())            {                app.UseDeveloperExceptionPage();            }             //env.EnvironmentName = "Cus1";    //设置自定义环境名称             app.Run(async (context) =>            {                context.Response.ContentType = "text/plain;charset=utf-8";  //防止WriteAsync方法输出中文乱码                var msg = this._Configuration.GetValue<string>("hello");                await context.Response.WriteAsync(msg, Encoding.UTF8);                            });        }    }}

然后我们在appsettings.json配置中, 新增一行:"hello": "appsettings.json", 如图:

如何设置ASP.Net Core MVC开发环境

F5执行, 浏览器输出了appsettings.json, 没问题

然后我们点一下appsettings.json文件前面的箭头, 会发现里面还有个appsettings.Development.json文件, 如图:

如何设置ASP.Net Core MVC开发环境

打开appsettings.Development.json文件, 在里面和配置appsettings.json一样, 添加个hello配置, 把值设置为appsettings.Development.json, 如图:

如何设置ASP.Net Core MVC开发环境

然后再F5运行, 浏览器输出的就是appsettings.Development.json啦~, 这里的原因, 前面章节已经讲过, 这里不再称述.

我们新建个appsettings.Cus.json文件, 然后在里面加个hello配置, 值为appsettings.Cus.json, 如图:

如何设置ASP.Net Core MVC开发环境

然后再修改运行环境为Cus, 修改方法参考上面, 然后F5运行, 浏览器就输出appsettings.Cus.json啦~

感谢你能够认真阅读完这篇文章,希望小编分享的“如何设置ASP.Net Core MVC开发环境”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: 如何设置ASP.Net Core MVC开发环境

本文链接: https://www.lsjlt.com/news/322451.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何设置ASP.Net Core MVC开发环境
    这篇文章主要介绍了如何设置ASP.Net Core MVC开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在实际开发中, 我们的系统往往会是至少两个...
    99+
    2023-06-29
  • ASP.Net Core MVC基础系列之环境设置
    上一节我们介绍了中间件的基本使用, 这一节我们讲一讲.Net Core的环境设置, 以及根据不同的环境加载不同的配置信息 PS: 由于最近一直比较忙, 一直没抽时间更新这个系列, 最...
    99+
    2024-04-02
  • ASP.NET Core开发环境安装配置
    ASP.NET Core环境设置 1.如何设置用于.NetCore应用程序开发的开发机器2.安装SDK和IDE3.验证安装 开发和.NET Core应用程序所需的工具和软件 1.设备...
    99+
    2024-04-02
  • 发布asp.net core时如何修改ASPNETCORE_ENVIRONMENT环境变量
    目录遇到的问题解决方案修改.csproj文件在FolderProfile.pubxml中添加EnvironmentNamedotnetpublish时添加cmd配置web.confi...
    99+
    2024-04-02
  • WSL如何设置php开发环境
    这篇文章主要介绍“WSL如何设置php开发环境”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“WSL如何设置php开发环境”文章能帮助大家解决问题。       ...
    99+
    2023-06-29
  • ASP.NET Core中的环境怎么配置
    这篇文章主要介绍了ASP.NET Core中的环境怎么配置的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇ASP.NET Core中的环境怎么配置文章都会有所收获,下面我们一起来看看吧。1.环...
    99+
    2023-06-29
  • ASP.NET Core MVC如何自定义Tag Helpers
    这篇文章主要为大家展示了“ASP.NET Core MVC如何自定义Tag Helpers”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“ASP.NET C...
    99+
    2023-06-29
  • php开发环境如何配置
    要配置PHP开发环境,您需要执行以下步骤:1. 安装PHP:从PHP官方网站(https://www.php.net/downloa...
    99+
    2023-09-05
    php
  • 如何配置Kotlin开发环境
    本篇文章为大家展示了如何配置Kotlin开发环境,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Kotlin是一种开源的基于JVM的变成语言,由JetBeans公司开发(大概除了使用VS的.net开发...
    99+
    2023-05-31
    kotlin
  • 一文轻松了解ASP.NET与ASP.NET Core多环境配置对比
    目录前言asp.net下的多环境配置如何增加额外的环境配置aspnetcore下的多环境配置什么是配置提供程序开发阶段的多环境发布阶段的实现多环境配置EnvironmentName ...
    99+
    2024-04-02
  • 如何配置Golang开发环境(最佳设置分享)
    Golang是一种广泛使用的编程语言,它支持并发和快速开发。但是,如果不进行正确的设置,它可能会变得缓慢和笨重。因此,在开始编写Golang应用程序之前,请考虑以下最佳设置。1.设置GOPATHGOPATH是Golang程序包的路径。它是在...
    99+
    2023-05-14
  • 如何在Windows上快速设置Python开发环境?
    Python是一种高级编程语言,具有易于学习、简洁易读、可扩展性强等特点。在Windows系统上搭建Python开发环境是非常简单的,本文将为大家介绍如何在Windows上快速设置Python开发环境。 第一步:下载Python安装包 首先...
    99+
    2023-08-02
    shell ide windows
  • ASP.NET Core MVC中如何使用Tag Helper组件
    这篇文章主要介绍ASP.NET Core MVC中如何使用Tag Helper组件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Tag Helper 组件 - 简介在 ASP.NET C...
    99+
    2023-06-29
  • vscode如何配置shell开发环境
    要配置shell开发环境在VSCode中,您可以按照以下步骤操作: 打开VSCode并安装 “Shell launcher” 插...
    99+
    2024-04-09
    vscode shell
  • Asp.Net Core配置多环境log4net配置文件的全过程
    目录前言配置log4net总结前言 在之前的文章中有讲到AspNetCore多环境配置文件的应用,我们根据自己多种环境分别配置多个appsettings.$EnvironmentNa...
    99+
    2024-04-02
  • idea如何配置javaweb开发环境
    要配置JavaWeb开发环境,您需要完成以下步骤:1. 安装Java Development Kit (JDK):从Oracle官网...
    99+
    2023-09-21
    idea javaweb
  • ASP.net Core微信平台开发配置Token
    如果先进行微信平台开发,配置Token是第一步。否则往后所有的代码都没办法在平台上跑得动。 但是官方给的源码是PHP的,ASP.net core 配置Token 的版本又少。研究怎么...
    99+
    2024-04-02
  • vscode如何配置go开发环境
    这篇文章主要介绍了vscode如何配置go开发环境的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vscode如何配置go开发环境文章都会有所收获,下面我们一起来看看吧。下载安装包网上有的教程采用的是数据包安装....
    99+
    2023-07-02
  • Eclipse集成开发环境如何配置
    配置Eclipse集成开发环境可以按照以下步骤进行:1. 下载Eclipse:在Eclipse官网上下载适合你的操作系统的Eclip...
    99+
    2023-08-23
    Eclipse
  • VSCode中如何配置Python开发环境
    VSCode中如何配置Python开发环境,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。检查Python是否安装成功:打开命令提示符输入 python 回车输入...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作