簡體   English   中英

AppSettings.config - 將字符串拆分到列表中

[英]AppSettings.config - split a string into the list

我在 appsettings.json 中有一個字符串:

    {
  "GeneralSettings": {
    "CompanyIds": "1,2,3,4,5"
  }
}

我如何將 map 轉換為 class,我需要用逗號將其拆分為列表:

public class GeneralSettings
{
    public List<int> CompanyIds { get; set; }
}

我現在有:

var generalSettings = new GeneralSettings();  
configuration.GetSection(nameof(GeneralSettings)).Bind(generalSettings);

你不能在你的配置文件中有一個數組嗎?

{
  "GeneralSettings": {
    "CompanyIds": [1,2,3,4,5]
  }
}

您可以使用以下代碼:

 var generalSettings = new GeneralSettings(); 
 var values = _configuration.GetSection(nameof(GeneralSettings) +   ":CompanyIds").Value;
 generalSettings.CompanyIds  = values.Split(",").ToList().ConvertAll(int.Parse);

或者

generalSettings.CompanyIds =  values.Split(",").Select(c=>int.Parse(c)).ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM