ASP.NET CORE入门之读取Json配置文件

首先新建一.net core控制台项目,命名为jsonReader

然后选中引用,选择NuGet包管理器,点击浏览引入mircosoft.aspnetcore.all并安装

选中解决方案,填加,新建项目,添加Json文件,命名为test.json

最后,因为添加的test.Json文件是不会被编译到项目发布的文件夹里面去的,这回导致生成的dll文件无法读取该json文件,需要选中该json文件,点击属性,进行如下设置

生成操作选择   内容   复制到输出目录 选择始终复制

在json中加入内容

{
  "name": "pragram language",
  "item": [
    {
      "language": "C#",
      "tool": "visual studio"
    },
    {
      "language": "JAVA",
      "tool": "Elcipse"
    }
  ] 

}

然后回到pragram.cs 

需要导入ConfigurationBuilder的命名空间

using Microsoft.Extensions.Configuration;

最后Program.CS的代码如下:

using System;
using Microsoft.Extensions.Configuration;

namespace JsonReader
{
    class Program
    {
        static void Main(string[] args)
        {
            var builder = new ConfigurationBuilder()
            .AddJsonFile("test.json");
            var configuration = builder.Build();
            Console.WriteLine($"name:{configuration["name"]}");
            Console.WriteLine();
            Console.WriteLine($"language:{configuration["item:0:language"]}");
            Console.WriteLine($"tool:{configuration["item:0:tool"]}");
            Console.WriteLine();
            Console.WriteLine($"language:{configuration["item:1:language"]}");
            Console.WriteLine($"tool:{configuration["item:1:tool"]}");
        }
    }
}

即可读取json中的内容并成功输出了。

项目的github地址:

https://github.com/liuzhenyulive/JsonReader

有任何疑问欢迎留言

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏跟着阿笨一起玩NET

关于WinForm/Web如何使用缓存Cach

相对到期也称滑动到期:设置相对过期时间 指定时间内无访问会失效。(类似Session机制)

1631
来自专栏跟着阿笨一起玩NET

ASP.NET 防止同一用户同时登陆

       要防止同一用户同时登陆,首页应该记录在线用户的信息(这里与用户名为例),然后判断正在登陆的用户里面是否已存在。在这里使用一个cache存放已经登陆...

1131
来自专栏晓晨的专栏

.NET Core 控制台应用程序使用异步(Async)Main方法

1063
来自专栏Golang语言社区

golang模板template自定义函数用法示例

golang的模板十分强大,其中的unix管道风格函数调用很是喜欢. 模板中有很多内置可以参看pkg文档, 另外还可以实现自定义函数. 例子如下: packag...

5224
来自专栏会跳舞的机器人

Redis持久化

Redis还能对AOF文件进行后台重写,使得AOF文件的体积不至于过大. 如果你只希望你的数据在服务器运行的时候存在,你也可以不使用任何持久化方式. 你也可以同...

2912
来自专栏Java成神之路

Mybatis异常_02_Result Maps collection already contains value for

   XXXMapper.xml文件中存在重名对象,保持名称不要一样即可正常启动。

1223
来自专栏kwcode

使用Cache缓存

存放位置:服务器内存,用于频繁访问且不轻易更改的内容缓存。 string CacheKey = "CT1"; //检索指定项, object objModel ...

3086
来自专栏武培轩的专栏

Redis持久化

Redis是内存型数据库,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化。 Redis支持两种持久化的方式,一...

4335
来自专栏JAVA后端开发

spring boot2.0实现对quartz的集成

2072
来自专栏晓晨的专栏

.NET Core 获取操作系统各种信息

1973

扫码关注云+社区

领取腾讯云代金券