Ejemplo n.º 1
0
        /// <summary>
        /// 设置该索引器指定参数的值。
        /// </summary>
        /// <param name="obj">类型的实例。如果该索引器是静态的,则指定为 Null</param>
        /// <param name="parameters">索引器的参数</param>
        /// <param name="value">值</param>
        public void SetValue(object obj, object[] parameters, object value)
        {
            if (GetValueMethod is null)
            {
                ThrowMissingMethodException("Indexer", PropertyInfo.DeclaringType, PropertyInfo, "set");
            }

            SetValueMethod.Invoke(ArrayHelper.Merge(obj, parameters, value));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 获取该索引器指定参数的值。
        /// </summary>
        /// <param name="obj">类型的实例。如果该索引器是静态的,则指定为 Null</param>
        /// <param name="parameters">索引器的参数</param>
        /// <returns>返回该值</returns>
        public object GetValue(object obj, object[] parameters)
        {
            if (GetValueMethod is null)
            {
                ThrowMissingMethodException("Indexer", PropertyInfo.DeclaringType, PropertyInfo, "get");
            }

            return(GetValueMethod.Invoke(obj, parameters));
        }