当前位置: 首页 > wzjs >正文

普通企业网站营销西安seo王

普通企业网站营销,西安seo王,公司建设网站的好处,食品包装设计注意事项11. 配置热更新 技术知识:在 .NET Core 中,配置文件(如 appsettings.json)修改后,应用程序能自动加载新配置,无需重启应用,这提高了运维效率。 Program.cs using Microsoft.AspNetCore.Build…

11. 配置热更新

  • 技术知识:在 .NET Core 中,配置文件(如 appsettings.json)修改后,应用程序能自动加载新配置,无需重启应用,这提高了运维效率。

Program.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 定义配置类
public class MyOptions
{public string MySetting { get; set; }
}var builder = WebApplication.CreateBuilder(args);// 配置强类型选项
builder.Services.Configure<MyOptions>(builder.Configuration.GetSection("MyOptions"));var app = builder.Build();var options = app.Services.GetRequiredService<Microsoft.Extensions.Options.IOptions<MyOptions>>().Value;
System.Console.WriteLine($"MySetting value: {options.MySetting}");app.Run();

appsettings.json

{"MyOptions": {"MySetting": "Hello, Options!"}
}    

12. 环境变量配置

  • 技术知识:可通过环境变量为 .NET Core 应用提供配置,这在不同环境(开发、测试、生产)部署时很有用,能灵活调整应用配置。

Program.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;var builder = WebApplication.CreateBuilder(args);// 从环境变量加载配置
builder.Configuration.AddEnvironmentVariables();var app = builder.Build();var config = app.Services.GetRequiredService<IConfiguration>();
var myEnvSetting = config["MyEnvSetting"];
if (!string.IsNullOrEmpty(myEnvSetting))
{Console.WriteLine($"Value from environment variable: {myEnvSetting}");
}
else
{Console.WriteLine("Environment variable not set.");
}app.Run();

13. 自定义服务生命周期

  • 技术知识:在 .NET Core 里,可自定义服务的生命周期,像创建单例服务、作用域服务和瞬态服务,以满足不同的业务需求。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 定义服务接口
public interface IMyService
{void DoWork();
}// 定义服务实现
public class MyService : IMyService
{public void DoWork(){System.Console.WriteLine("Service is doing work.");}
}var builder = WebApplication.CreateBuilder(args);// 注册单例服务
builder.Services.AddSingleton<IMyService, MyService>();var app = builder.Build();var service = app.Services.GetRequiredService<IMyService>();
service.DoWork();app.Run();

14. 过滤器(Filter)

  • 技术知识:过滤器能在请求处理管道的特定阶段执行代码,如授权过滤器、动作过滤器、异常过滤器等,可用于实现日志记录、权限验证等功能。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 自定义动作过滤器
public class CustomActionFilterAttribute : ActionFilterAttribute
{public override void OnActionExecuting(ActionExecutingContext context){System.Console.WriteLine("Before action execution");base.OnActionExecuting(context);}public override void OnActionExecuted(ActionExecutedContext context){System.Console.WriteLine("After action execution");base.OnActionExecuted(context);}
}// 定义控制器
[ApiController]
[Route("[controller]")]
public class MyController : ControllerBase
{[HttpGet][CustomActionFilter]public IActionResult Get(){return Ok("Hello, World!");}
}var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();var app = builder.Build();app.UseRouting();
app.MapControllers();app.Run();

15. 中间件顺序

  • 技术知识:中间件的执行顺序对请求处理流程有重要影响,合理安排中间件顺序能确保应用按预期工作。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 自定义动作过滤器
public class CustomActionFilterAttribute : ActionFilterAttribute
{public override void OnActionExecuting(ActionExecutingContext context){System.Console.WriteLine("Before action execution");base.OnActionExecuting(context);}public override void OnActionExecuted(ActionExecutedContext context){System.Console.WriteLine("After action execution");base.OnActionExecuted(context);}
}// 定义控制器
[ApiController]
[Route("[controller]")]
public class MyController : ControllerBase
{[HttpGet][CustomActionFilter]public IActionResult Get(){return Ok("Hello, World!");}
}var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();var app = builder.Build();app.UseRouting();
app.MapControllers();app.Run();

16. 端点路由

  • 技术知识:端点路由是 .NET Core 3.0 引入的新路由系统,提供更灵活、高效的路由配置方式,支持属性路由、约定路由等。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Hosting;var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();app.UseRouting();app.UseEndpoints(endpoints =>
{endpoints.MapGet("/", async context =>{await context.Response.WriteAsync("Hello from root!");});endpoints.MapGet("/about", async context =>{await context.Response.WriteAsync("This is the about page.");});
});app.Run();

17. 应用启动配置

  • 技术知识:可在应用启动时进行各种配置,如设置日志级别、添加服务、配置中间件等,确保应用按需求启动。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;var builder = WebApplication.CreateBuilder(args);// 配置日志
builder.Logging.ClearProviders();
builder.Logging.AddConsole();// 添加服务
builder.Services.AddControllers();var app = builder.Build();if (app.Environment.IsDevelopment())
{app.UseDeveloperExceptionPage();
}app.UseRouting();
app.MapControllers();app.Run();

18. 依赖注入作用域

  • 技术知识:依赖注入作用域定义了服务实例的生命周期范围,如单例服务在整个应用生命周期内只有一个实例,作用域服务在每个请求周期内只有一个实例。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 定义服务接口
public interface IMyScopedService
{void DoWork();
}// 定义服务实现
public class MyScopedService : IMyScopedService
{public void DoWork(){System.Console.WriteLine("Scoped service is doing work.");}
}var builder = WebApplication.CreateBuilder(args);// 注册作用域服务
builder.Services.AddScoped<IMyScopedService, MyScopedService>();var app = builder.Build();using (var scope = app.Services.CreateScope())
{var scopedService = scope.ServiceProvider.GetRequiredService<IMyScopedService>();scopedService.DoWork();
}app.Run();

19. 配置强类型选项

  • 技术知识:可将配置文件中的配置项映射到强类型类,便于在代码中使用,提高代码的可读性和可维护性。

Program.cs

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;// 定义配置类
public class MyOptions
{public string MySetting { get; set; }
}var builder = WebApplication.CreateBuilder(args);// 配置强类型选项
builder.Services.Configure<MyOptions>(builder.Configuration.GetSection("MyOptions"));var app = builder.Build();var options = app.Services.GetRequiredService<Microsoft.Extensions.Options.IOptions<MyOptions>>().Value;
System.Console.WriteLine($"MySetting value: {options.MySetting}");app.Run();

appsettings.json

{"MyOptions": {"MySetting": "Hello, Options!"}
}    

20. 应用程序生命周期事件

  • 技术知识:.NET Core 应用有多个生命周期事件,如启动、停止等,可通过订阅这些事件执行特定代码,如资源清理、日志记录等。

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
using System;var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();var lifetime = app.Services.GetRequiredService<IHostApplicationLifetime>();lifetime.ApplicationStarted.Register(() =>
{Console.WriteLine("Application has started.");
});lifetime.ApplicationStopping.Register(() =>
{Console.WriteLine("Application is stopping.");
});lifetime.ApplicationStopped.Register(() =>
{Console.WriteLine("Application has stopped.");
});app.Run();

http://www.dtcms.com/wzjs/449711.html

相关文章:

  • 深圳都信建设监理有限公司网站广告平台
  • 十堰网站建设电话市场营销四大基本策略
  • 检测网站为什么打不开了哪里做网站便宜
  • 申请一个网页要多少钱长春关键词优化公司
  • 做app和网站怎样网络推广员每天的工作是什么
  • 离开东莞最新政策绍兴seo计费管理
  • 千助网站公司房产网站模板
  • 苏州做网站平台湛江百度网站快速排名
  • 个人网站代码html网站优化服务
  • 微信做引流网站seo标题优化分析范文
  • 深圳专门做写字楼的网站目前常用的搜索引擎有哪些
  • 做移动网站点击软件厦门seo俱乐部
  • 网站开发公司前置审批上海网优化seo公司
  • 新疆建设兵团门户网站智能建站模板
  • wordpress+修改邮箱搜索引擎优化的方法包括
  • 策划书案例范文页面优化的方法有哪些
  • 诚信网站认证必需做吗推广注册app拿佣金平台
  • 上海网站建设广告语沈阳专业seo关键词优化
  • 目前哪个网站建设的最好软文素材网站
  • asp.net做网站有何意义百度宁波运营中心
  • 写网站建设需求文档企业建站都有什么网站
  • 中国建设银行肃宁支行网站百度seo优化软件
  • 台州网站如何制作免费注册网址
  • 优客工场 网站开发window优化大师
  • 网站落地页如何做2023年8月疫情爆发
  • centos。wordpress中国seo谁最厉害
  • 天津免费建设网站简单的网页设计作品
  • 彩票网站怎么做代理百度搜索引擎排名规则
  • 做网站开发哪里可以接单网站模板
  • 技术支持:淄博网站建设网站建设小程序开发