コード例 #1
0
        internal void InternalSetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture)
        {
            RtFieldInfo rtFieldInfo = this.m_field as RtFieldInfo;

            if (rtFieldInfo != null)
            {
                rtFieldInfo.CheckConsistency(obj);
                rtFieldInfo.UnsafeSetValue(obj, value, invokeAttr, binder, culture);
                return;
            }
            this.m_field.SetValue(obj, value, invokeAttr, binder, culture);
        }
コード例 #2
0
        internal void InternalSetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture)
        {
            RtFieldInfo field = m_field as RtFieldInfo;

            if (field != null)
            {
                field.CheckConsistency(obj);
                field.UnsafeSetValue(obj, value, invokeAttr, binder, culture);
            }
            else
            {
                m_field.SetValue(obj, value, invokeAttr, binder, culture);
            }
        }
コード例 #3
0
        internal void InternalSetValue(object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture)
        {
            RtFieldInfo rtFieldInfo = this.m_field as RtFieldInfo;

            if ((System.Reflection.FieldInfo)rtFieldInfo != (System.Reflection.FieldInfo)null)
            {
                rtFieldInfo.CheckConsistency(obj);
                rtFieldInfo.UnsafeSetValue(obj, value, invokeAttr, binder, culture);
            }
            else
            {
                this.m_field.SetValue(obj, value, invokeAttr, binder, culture);
            }
        }
コード例 #4
0
        internal static void SerializationSetValue(MemberInfo fi, object target, object value)
        {
            RtFieldInfo rtFieldInfo = fi as RtFieldInfo;

            if (rtFieldInfo != null)
            {
                rtFieldInfo.CheckConsistency(target);
                rtFieldInfo.UnsafeSetValue(target, value, BindingFlags.Default, FormatterServices.s_binder, null);
                return;
            }
            SerializationFieldInfo serializationFieldInfo = fi as SerializationFieldInfo;

            if (serializationFieldInfo != null)
            {
                serializationFieldInfo.InternalSetValue(target, value, BindingFlags.Default, FormatterServices.s_binder, null);
                return;
            }
            throw new ArgumentException(Environment.GetResourceString("Argument_InvalidFieldInfo"));
        }
コード例 #5
0
        internal static void SerializationSetValue(MemberInfo fi, Object target, Object value)
        {
            Contract.Requires(fi != null);

            RtFieldInfo rtField = fi as RtFieldInfo;

            if (rtField != null)
            {
                rtField.CheckConsistency(target);
                rtField.UnsafeSetValue(target, value, BindingFlags.Default, s_binder, null);
                return;
            }

            SerializationFieldInfo serField = fi as SerializationFieldInfo;

            if (serField != null)
            {
                serField.InternalSetValue(target, value, BindingFlags.Default, s_binder, null);
                return;
            }

            throw new ArgumentException(Environment.GetResourceString("Argument_InvalidFieldInfo"));
        }