private void SetMethodValue(object value)
        {
            if (_methodInfo == null)
            {
                return;
            }

            if (!OSCReflection.CheckAccess(_methodInfo, OSCReflectionAccess.Write))
            {
                return;
            }

            var parameters = new object[1];

            if (value == null || _methodWriteType.IsAssignableFrom(value.GetType()))
            {
                parameters[0] = value;
            }
            else
            {
                parameters[0] = Convert.ChangeType(value, _methodWriteType);
            }

            _methodInfo.Invoke(_target, parameters);
        }
        // METHOD
        private object GetMethodValue()
        {
            if (_methodInfo == null)
            {
                return(null);
            }

            if (!OSCReflection.CheckAccess(_methodInfo, OSCReflectionAccess.Read))
            {
                return(null);
            }

            return(_methodInfo.Invoke(_target, null));
        }