Пример #1
0
        public static void PatchLatestConfiguration(this TableOperations <MeterConfiguration> meterConfigurationTable, Meter meter, string configKey, string newConfigText)
        {
            RecordRestriction latestConfigurationQueryRestriction =
                new RecordRestriction("MeterID = {0}", meter.ID) &
                new RecordRestriction("ConfigKey = {0}", configKey) &
                new RecordRestriction("DiffID IS NULL");

            MeterConfiguration latestConfiguration = meterConfigurationTable.QueryRecord("RevisionMajor DESC, RevisionMinor DESC", latestConfigurationQueryRestriction);

            if (latestConfiguration == null)
            {
                MeterConfiguration newConfiguration = new MeterConfiguration();
                newConfiguration.MeterID       = meter.ID;
                newConfiguration.ConfigKey     = configKey;
                newConfiguration.ConfigText    = newConfigText;
                newConfiguration.RevisionMajor = 0;
                newConfiguration.RevisionMinor = 0;
                meterConfigurationTable.AddNewRecord(newConfiguration);
                return;
            }

            meterConfigurationTable.Patch(latestConfiguration, newConfigText);
        }