public RefTelemetryType GetRefTelemetryTypeByNameOrInsert(string _name)
        {
            try
            {
                using (var context = new VeraEntities())
                {
                    var RefTelemetryType = context.RefTelemetryType.FirstOrDefault(x => x.Name.Trim() == _name.Trim() && x.Status > 0);

                    if (RefTelemetryType == null)
                    {
                        RefTelemetryType = new RefTelemetryType()
                        {
                            Name   = _name.Trim(),
                            Status = 1
                        };

                        context.RefTelemetryType.Add(RefTelemetryType);
                        context.SaveChanges();
                        return(RefTelemetryType);
                    }

                    return(RefTelemetryType);
                }
            }
            catch (Exception exc)
            {
                throw exc;
            }
        }
 private void UpdateObject(RefTelemetryType _newRefTelemetryType, ref RefTelemetryType _oldRefTelemetryType)
 {
     try
     {
         foreach (PropertyInfo RefTelemetryTypePropInfo in _newRefTelemetryType.GetType().GetProperties().ToList())
         {
             _oldRefTelemetryType.GetType().GetProperty(RefTelemetryTypePropInfo.Name).SetValue(_oldRefTelemetryType, _newRefTelemetryType.GetType().GetProperty(RefTelemetryTypePropInfo.Name).GetValue(_newRefTelemetryType));
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }
 public RefTelemetryType AddNewRefTelemetryType(RefTelemetryType _RefTelemetryType)
 {
     try
     {
         using (var context = new VeraEntities())
         {
             context.RefTelemetryType.Add(_RefTelemetryType);
             int numOfInserted = context.SaveChanges();
             return(numOfInserted > 0 ? _RefTelemetryType : null);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
        public RefTelemetryType UpdateRefTelemetryType(RefTelemetryType _RefTelemetryType)
        {
            try
            {
                using (var context = new VeraEntities())
                {
                    var oldRefTelemetryType = context.RefTelemetryType.FirstOrDefault(u => u.Id == _RefTelemetryType.Id);
                    if (oldRefTelemetryType != null)
                    {
                        UpdateObject(_RefTelemetryType, ref oldRefTelemetryType);
                        var numberOfUpdatedRefTelemetryType = context.SaveChanges();
                        return(numberOfUpdatedRefTelemetryType > 0 ? _RefTelemetryType : null);
                    }

                    return(null);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }