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

北京58网站建设互联网工程师

北京58网站建设,互联网工程师,杭州做宠物网站的公司,安卓编程软件app翻译自 Mohamad Lawand 2021年3月24日的文章 《.NET 5 Console App with Dependency Injection, Serilog Logging, and AppSettings》 [1]在本文中#xff0c;我们将构建一个 .NET 5 控制台应用程序#xff0c;该应用程序支持依赖注入、日志记录和 appsettings 配置。你也可以… 翻译自 Mohamad Lawand 2021年3月24日的文章 《.NET 5 Console App with Dependency Injection, Serilog Logging, and AppSettings》 [1]在本文中我们将构建一个 .NET 5 控制台应用程序该应用程序支持依赖注入、日志记录和 appsettings 配置。你也可以在 YouTube 上观看完整的视频[2]还可以在 GitHub 上下载源代码[3]。我们要用到的开发工具有Visual Studio Code (https://code.visualstudio.com/).NET Core SDK (https://dotnet.microsoft.com/download)我们要实现的功能包含依赖注入Serilog LoggerAppSettings我们将构建一个示例应用程序该应用程序将模拟通过依赖注入连接数据库并输出日志。首先我们在终端中创建应用程序dotnet new console -n SampleApp 创建好应用程序后在 Visual Studio Code 中打开应用程序然后构建并运行一下以确保一切正常dotnet build dotnet run 接下来是安装我们所需的程序包dotnet add package Microsoft.Extensions.Hosting dotnet add package Serilog.Extensions.Hosting dotnet add package Serilog.Settings.Configuration dotnet add package Serilog.Sinks.Console 下一步是添加 appsettings.json在应用程序的根目录中右键单击并选择 New File将文件名称设置为 appsettings.json。我们将在 appsettings 中添加所需的配置项——Serilog以及用于模拟数据库连接的 ConnectionStrings{Serilog: {MinimalLevel: {Default: Information,Override: {System: Warning,Microsoft: Information}}},ConnectionStrings: {DefaultConnection: DataSource:app.db;CacheShared} } 我们从实现日志记录的机制开始讲起。在 Program.cs 中添加以下代码该段代码的职责是读取 appsetting.json 并将其提供给我们的应用程序// 检查应用程序运行的当前目录找到并加载 appsetting.json // 然后添加环境变量这些环境变量会覆盖 appsettings.json 中的配置 static void BuildConfig(IConfigurationBuilder builder) {builder.SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile(appsettings.json, optional: false, reloadOnChange: true).AddEnvironmentVariables(); } 然后我们需要创建另一个方法该方法是我们应用程序的启动方法它负责将所有的内容汇集在一起。我们将定义 Serilog 和 .NET Core 中的依赖注入机制。static IHost AppStartup() {var builder new ConfigurationBuilder();BuildConfig(builder);// 定义 Serilog 配置Log.Logger new LoggerConfiguration() //初始化 Logger 配置.ReadFrom.Configuration(builder.Build()) //将 Serilog 连接到我们的配置.Enrich.FromLogContext() //从装入的 Serilog 向日志添加更多信息.WriteTo.Console() //决定在哪里显示日志.CreateLogger(); //初始化 LoggerLog.Logger.Information(Application Starting);// 初始化依赖注入容器var host Host.CreateDefaultBuilder() //初始化 Host .ConfigureServices((context, services) //向容器添加服务{}).UseSerilog() //添加 Serilog.Build(); //构建 Hostreturn host; } 现在让我们实现数据服务用它来模拟数据库。让我们创建一个名为 DataService 的新类和一个名为 IDataService 的接口// 接口 public interface IDataService {void Connect(); }// 类 public class DataService : IDataService {private readonly ILoggerDataService _log;private readonly IConfiguration _config;public DataService(ILoggerDataService log, IConfiguration config){_log log;_config config;}public void Connect(){// 读取连接字符串var connString _config.GetValuestring(ConnectionStrings:DefaultConnection);_log.LogInformation(Connection String {cs}, connString);} } 然后我们需要更新 Program.cs 类中的 AppStartup 方法以注入 DataServicevar host Host.CreateDefaultBuilder() //初始化 Host .ConfigureServices((context, services) //向容器添加服务{services.AddTransientIDataService, DataService(); //AddTransient 意味着每次请求都会创建一个实例。}).UseSerilog() //添加 Serilog.Build(); //构建 Host 最后让我们在 Main 方法中调用他们static void Main(string[] args) {var host AppStartup();var dataService ActivatorUtilities.CreateInstanceDataService(host.Services);dataService.Connect(); } 好了就是这样。感谢您的阅读。相关链接https://dev.to/moe23/net-5-console-app-with-dependency-injection-serilog-logging-and-appsettings-3d4n .NET 5 Console App with Dependency Injection, Serilog Logging, and AppSettings ↩︎https://youtu.be/4mEN1XpLN_s ↩︎https://github.com/mohamadlawand087/v22-DotnetConsole ↩︎作者 Mohamad Lawand译者 技术译民出品 技术译站https://ITTranslator.cn/END
http://www.yutouwan.com/news/6859/

相关文章:

  • 德阳百度网站建设文创产品设计方案模板
  • 网站开发与维护考察试题wordpress制作网站教程
  • wordpress网站被拒登郑州房产网58同城网
  • 个人网站备案 服务内容怎么写怎么做小程序
  • 东莞企业自助建站系统网站运营可以转行做网站设计吗
  • 青海wap网站建设比较好中国域名网官网
  • 徐州建设工程交易网站定制开发源代码归谁
  • 响应式网站建站价格如何创建公众号微信免费的
  • 做外贸网站公司南通公司做网站
  • 手机网站和pc网站的区别瓷砖网站建设
  • 网站建设公司如何做大电商运营推广怎么做
  • 网站开发人员工资wordpress的安装教程
  • 格尔木市建设局网站做网站公司赚钱么
  • 企业网站的基本类型包括商业授权证明
  • 做网站设计制作的响应式布局
  • 呼市网站设计公司四川微信网站建设推广
  • 绍兴市建设局网站python报班一般多少钱
  • 商用营销型网站建设优化建站深圳农产品网站制作
  • 北京市工程建设交易中心网站兄弟们试试这个网址
  • app怎么查网站备案广州网站建设需要多少钱
  • 设计网站排行榜前十名怎么知道网站的空间服务商
  • 北京通州区网站制作seo 百度网盘
  • 简单网站建设视频教程下载网页制作员工作厂家电话
  • 谷歌上怎样做网站建设工程安全备案网站
  • 获取网站访客qq号码程序下载哪里有软件开发培训机构
  • 网站论坛制作建设网站涉及哪些问题
  • 德阳做网站保定网站网站建设
  • 网站建设项目来源wordpress 256m内存
  • 西宁市城北区建设网站请简述网站建设流程图
  • 成都网站设计新闻网站网页设计项目计划书