.net core 配置系统实战:命令行配置

摘要

使用cmd导入系统软件,需要引入Microsoft.extensions.Configuration.commandLine包。编码时,可以使用IConfigurationBuilder builder = new…来实现。

正文

分类整理 .net core 实践活动篇————配备系统软件——军令(cmd)[六]

序言

前文早已基本上写了一下环境变量系统软件的一些基本概念。文中介绍一下cmd导进配备系统软件。

文章正文

要应用得话,引进Microsoft.extensions.Configuration.commandLine 包。

编码:

IConfigurationBuilder builder = new ConfigurationBuilder();
builder.AddCommandLine(args);
var configurationRoot = builder.Build();
Console.WriteLine($"CommandLineKey1:{configurationRoot["CommandLineKey1"]}");
Console.ReadLine();

载入检测主要参数:

結果:

另一个难题,便是cmd适用几类指令文件格式。

  1. 无作为前缀方式 key=value 方式

  2. 双中水平线方式 –key = value 或 –key vlaue

  3. 正斜线方式 /key=value 或/key value

注:假如–key = value 这类等于号方式,那麼就不可以应用–key vlaue 这类正中间空格符二点方式。
配备:

IConfigurationBuilder builder = new ConfigurationBuilder();
builder.AddCommandLine(args);
var configurationRoot = builder.Build();
Console.WriteLine($"CommandLineKey1:{configurationRoot["CommandLineKey1"]}");
Console.WriteLine($"CommandLineKey2:{configurationRoot["CommandLineKey2"]}");
Console.WriteLine($"CommandLineKey3:{configurationRoot["CommandLineKey3"]}");
Console.ReadLine();

結果:

这儿实际上新项目特性在lauchSettings.json 中,后边我不截屏,立即放这一运行配备。

指令更换方式:

{
  "profiles": {
    "ConfigureDemo": {
      "commandName": "Project",
      "commandLineArgs": "CommandLineKey1=value1 /CommandLineKey2=value2 --CommandLineKey3=value3 -k1=value4"
    }
  }
}

编码:

IConfigurationBuilder builder = new ConfigurationBuilder();
var mappers = new Dictionary<string, string>
{
	{"-k1","CommandLineKey1" }
};
builder.AddCommandLine(args, mappers);
var configurationRoot = builder.Build();
Console.WriteLine($"CommandLineKey1:{configurationRoot["CommandLineKey1"]}");
Console.WriteLine($"CommandLineKey2:{configurationRoot["CommandLineKey2"]}");
Console.WriteLine($"CommandLineKey3:{configurationRoot["CommandLineKey3"]}");
Console.ReadLine();

这里边便是以-k1的值更换了CommandLineKey1的值。

以上的-k1也不是随意取名的,要用-开始才能够更换。

那麼这类有什么作用呢?

这类能够减少取名。

{
  "profiles": {
    "ConfigureDemo": {
      "commandName": "Project",
      "commandLineArgs": "-k1=value4"
    }
  }
}

编码:

IConfigurationBuilder builder = new ConfigurationBuilder();
var mappers = new Dictionary<string, string>
{
	{"-k1","CommandLineKey1" }
};
builder.AddCommandLine(args, mappers);
var configurationRoot = builder.Build();
Console.WriteLine($"CommandLineKey1:{configurationRoot["CommandLineKey1"]}");
Console.ReadLine();

結果:

下一节配备系统之变色龙(自然环境配备)

以上为本人梳理,若有不正确望请强调,感谢。

关注不迷路

扫码下方二维码,关注宇凡盒子公众号,免费获取最新技术内幕!

温馨提示:如果您访问和下载本站资源,表示您已同意只将下载文件用于研究、学习而非其他用途。
文章版权声明 1、本网站名称:宇凡盒子
2、本站文章未经许可,禁止转载!
3、如果文章内容介绍中无特别注明,本网站压缩包解压需要密码统一是:yufanbox.com
4、本站仅供资源信息交流学习,不保证资源的可用及完整性,不提供安装使用及技术服务。点此了解
5、如果您发现本站分享的资源侵犯了您的权益,请及时通知我们,我们会在接到通知后及时处理!提交入口
0

评论0

请先

站点公告

🚀 【宇凡盒子】全网资源库转储中心

👉 注册即送VIP权限👈

👻 全站资源免费下载✅,欢迎注册!

记得 【收藏】+【关注】 谢谢!~~~

立即注册
没有账号?注册  忘记密码?

社交账号快速登录