【问题标题】:Asp net core mvc configuration appsettings.jsonasp net core mvc配置appsettings.json
【发布时间】:2018-07-18 15:06:24
【问题描述】:

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

还有这个微软的指南: LINK

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

我必须实现 IConfigureOptions 吗? 最终,保存设置的最佳替代方法应该是什么? 我是否必须使用 EntityFramework 将其保存在数据库中?

CustomSetting JSON 段落如下:

"CustomSettings": {
  "MinimumDouble": 0,
  "MaximumDouble": 25000,
  "MyClassFirst": {
    "LimitDouble": 0,
    "Percent": 15
  }
}

还有 c# 类:

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;
}

【问题讨论】:

  • 将数据写入 appsettings.json 文件似乎不是一个好主意,因为这些值应该为应用程序修复。您希望在应用程序运行时保存什么样的数据?我认为最好创建一个新文件或将其写入数据库。
  • 好的,谢谢您的建议。我必须编写一些基本设置,例如用户可以插入的双精度限制,但我希望管理员能够根据需要更改此值(在 db 上,它们将被写入单行)

标签: asp.net-core asp.net-core-mvc


【解决方案1】:

已解决:

按照 Wouter 的建议,我创建了一个自定义类,可以读取/保存 Json 文件(不是 appsettings.json)中的设置。 简单地使用 Newtonsoft Json 库(和反序列化函数)。 效果很好,我不需要打电话给 DB。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    相关资源
    最近更新 更多