System.Runtime.Serialization.CodeGenerator.Ldtoken C# (CSharp) Method

Ldtoken() private method

private Ldtoken ( Type t ) : void
t System.Type
return void
        internal void Ldtoken(Type t)
        {
            if (_codeGenTrace != CodeGenTrace.None)
                EmitSourceInstruction("Ldtoken " + t);
            _ilGen.Emit(OpCodes.Ldtoken, t);
        }

Usage Example

コード例 #1
0
            void InternalSerialize(MethodInfo methodInfo, LocalBuilder memberValue, Type memberType, bool writeXsiType)
            {
                ilg.Load(contextArg);
                ilg.Load(xmlWriterArg);
                ilg.Load(memberValue);
                ilg.ConvertValue(memberValue.LocalType, Globals.TypeOfObject);
                LocalBuilder typeHandleValue = ilg.DeclareLocal(typeof(RuntimeTypeHandle), "typeHandleValue");

                ilg.Call(null, typeof(Type).GetMethod("GetTypeHandle"), memberValue);
                ilg.Stloc(typeHandleValue);
                ilg.LoadAddress(typeHandleValue);
                ilg.Ldtoken(memberType);
                ilg.Call(typeof(RuntimeTypeHandle).GetMethod("Equals", new Type[] { typeof(RuntimeTypeHandle) }));
                ilg.Load(writeXsiType);
                ilg.Load(DataContract.GetId(memberType.TypeHandle));
                ilg.Ldtoken(memberType);
                ilg.Call(methodInfo);
            }
All Usage Examples Of System.Runtime.Serialization.CodeGenerator::Ldtoken