public void SaveResultEntry([JetBrains.Annotations.NotNull] SaveableEntry entry) { entry.IntegrityCheck(); string dstFileName = GetFilenameForHouseholdKey(entry.HouseholdKey); using (System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection("Data Source=" + dstFileName + ";Version=3")) { //;Synchronous=OFF;Journal Mode=WAL;" conn.Open(); if (!IsTableCreated(entry)) { MakeTableForListOfFields(entry.Fields, conn, entry.ResultTableDefinition.TableName); Dictionary <string, object> fields = new Dictionary <string, object> { { "TableName", entry.ResultTableDefinition.TableName }, { "Description", entry.ResultTableDefinition.Description }, { "ResultTableID", entry.ResultTableDefinition.ResultTableID }, { "EnablingOption", entry.ResultTableDefinition.EnablingOption } }; List <Dictionary <string, object> > rows = new List <Dictionary <string, object> > { fields }; SaveDictionaryToDatabase(rows, "TableDescription", conn); if (!_createdTablesPerHousehold.ContainsKey(entry.HouseholdKey)) { _createdTablesPerHousehold.Add(entry.HouseholdKey, new List <string>()); } _createdTablesPerHousehold[entry.HouseholdKey].Add(entry.ResultTableDefinition.TableName); } SaveDictionaryToDatabase(entry.RowEntries, entry.ResultTableDefinition.TableName, conn); conn.Close(); } }