Asp.net core Asp net核心mvc配置appsettings.json

Asp.net core Asp net核心mvc配置appsettings.json,asp.net-core,asp.net-core-mvc,Asp.net Core,Asp.net Core Mvc,我正在开发一个MVC应用程序,我想管理设置。 我读过这本指南: 这是微软的指南: 我能够将json中的值正确地传递给我的控制器, 但现在我正在搜索如何从控制器将设置写入JSON 我必须实现IConfigureOptions吗? 最后,保存设置的最佳替代方法是什么? 我必须使用EntityFramework将其保存在DB中吗 CustomSetting JSON段落如下所示: "CustomSettings": { "MinimumDouble": 0, "MaximumDouble"

我正在开发一个MVC应用程序,我想管理设置。 我读过这本指南:

这是微软的指南:

我能够将json中的值正确地传递给我的控制器, 但现在我正在搜索如何从控制器将设置写入JSON

我必须实现IConfigureOptions吗? 最后,保存设置的最佳替代方法是什么? 我必须使用EntityFramework将其保存在DB中吗

CustomSetting JSON段落如下所示:

"CustomSettings": {
  "MinimumDouble": 0,
  "MaximumDouble": 25000,
  "MyClassFirst": {
    "LimitDouble": 0,
    "Percent": 15
  }
}
还有c级:

已解决:

正如Wouter所建议的,我创建了一个自定义类,可以读取/保存Json文件(而不是appsettings.Json)中的设置。 只需使用newtonsoftjson库(和反序列化函数)。 工作正常,我不需要打电话给DB


如果有更好的方法,我会继续听下去:)

将数据写入appsettings.json文件似乎不是一个好主意,因为这些值对于应用程序来说应该是固定的。您希望在应用程序运行时保存哪些类型的数据?我认为最好创建一个新文件或将其写入数据库。好的,谢谢你的建议。我必须编写一些基本设置,例如用户可以插入的双精度限制,但我希望管理员能够根据自己的需要更改此值(在db上,这些设置将写入一行)
public class CustomSettings
{
    public double MinimumDouble { get; set; } = 0;
    public double MaximumDouble { get; set; } = 2000;
    public MyClass MyClassFirst { get; set; } = 2000;
}

public class MyClass
{
    public double LimitDouble { get; set; } = 0;
    public double Percent { get; set; } = 15;
}