using MapoSDK; using MongoDB.Driver; using SteamWare; using System.Collections.Generic; namespace MapoDb { /// /// Classe gestione archivio modelli MTC dei vari IOB /// public class MtcDataModelArchive { /// /// Database corrente MongoDB /// IMongoDatabase database; /// /// Dizionario conf macchine /// public Dictionary> machineDataItems = new Dictionary>(); /// /// Classe gestione archivio allarmi /// public MtcDataModelArchive() { database = memLayer.ML.getMongoDatabase("MAPO"); } /// /// Singleton gestione istanza AlarmsManager /// public static MtcDataModelArchive man = new MtcDataModelArchive(); /// /// Salva il DataModel XML della macchina indicata /// /// /// /// public bool saveMachineDataItems(string idxMacchina, List dataItems) { bool answ = false; try { var collMtcSetup = database.GetCollection("MtcSetup"); // compongo filtro ricerca e metodo update var filter = Builders.Filter.Eq(u => u.idxMacchina, idxMacchina); var update = Builders.Update.Set(u => u.dataItems, dataItems); // chiamo update: cerco riga, se c'è aggiorno sennò creo collMtcSetup.UpdateOne(filter, update); answ = true; } catch { } return answ; } } }