System.Runtime.Serialization.ObjectHolder.SetObjectValue C# (CSharp) Method

SetObjectValue() private method

private SetObjectValue ( object obj, ObjectManager manager ) : void
obj object
manager ObjectManager
return void
        internal void SetObjectValue(object obj, ObjectManager manager)
        {
            _object = obj;
            if (obj == manager.TopObject)
            {
                _reachable = true;
            }
            if (obj is TypeLoadExceptionHolder)
            {
                _typeLoad = (TypeLoadExceptionHolder)obj;
            }

            if (_markForFixupWhenAvailable)
            {
                manager.CompleteObject(this, true);
            }
        }

Usage Example

コード例 #1
0
ファイル: ObjectManager.cs プロジェクト: randomize/VimConfig
        private bool ResolveObjectReference(ObjectHolder holder)
        {
            int num = 0;

            try
            {
                object objectValue;
                do
                {
                    objectValue = holder.ObjectValue;
                    holder.SetObjectValue(((IObjectReference)holder.ObjectValue).GetRealObject(this.m_context), this);
                    if (holder.ObjectValue == null)
                    {
                        holder.SetObjectValue(objectValue, this);
                        return(false);
                    }
                    if (num++ == 100)
                    {
                        throw new SerializationException(Environment.GetResourceString("Serialization_TooManyReferences"));
                    }
                }while ((holder.ObjectValue is IObjectReference) && (objectValue != holder.ObjectValue));
            }
            catch (NullReferenceException)
            {
                return(false);
            }
            holder.IsIncompleteObjectReference = false;
            this.DoNewlyRegisteredObjectFixups(holder);
            return(true);
        }
All Usage Examples Of System.Runtime.Serialization.ObjectHolder::SetObjectValue