Ho un file JSON che ha alcuni hundered di righe memorizzate come sotto ..
[
{
"Id": "1",
"Name": "A"
},
{
"Id": "1",
"Name": "A"
}
]
Sto cercando di caricarlo in una raccolta di una classe. Questi dati sono statici e non cambieranno, quindi ho bisogno di caricarlo solo una volta.
Ho creato una classe e caricandola nel costruttore privato e caricando nella raccolta che ho nella classe.
public sealed class JsonLoader : IJsonloader
{
private readonly IEnumerable<Product> products = new List<Product>();
private JsonLoader()
{
using (var r = new StreamReader("data.json"))
{
var json = r.ReadToEnd();
products = //deserialse the json here
}
}
public static IEnumerable<Product> Products => this.products;
}
Implementare singleton usando l'opzione singleton della mappa della struttura. Voglio sapere se il mio modo di implementare è corretto o se può migliorare ulteriormente?
o Qualunque altro modo migliore per farlo? qualsiasi aiuto molto apprezzato:)