public void UpdateMetrics(MetricsEntity metrics) { lock (locker) { if (metrics == null || metrics.IsTransient()) { throw new Exception(metrics + " is transient or null. Use service to get metrics"); } foreach (var e in metrics.Entries) { e.Metrics = metrics; } metricsRepo.Update(metrics); } }