System.Reflection.Emit.TypeBuilder.DefineProperty C# (CSharp) Method

DefineProperty() public method

public DefineProperty ( string name, System attributes, System returnType, System parameterTypes ) : System.Reflection.Emit.PropertyBuilder
name string
attributes System
returnType System
parameterTypes System
return System.Reflection.Emit.PropertyBuilder
        public System.Reflection.Emit.PropertyBuilder DefineProperty(string name, System.Reflection.PropertyAttributes attributes, System.Type returnType, System.Type[] parameterTypes) { throw null; }
        public System.Reflection.Emit.PropertyBuilder DefineProperty(string name, System.Reflection.PropertyAttributes attributes, System.Type returnType, System.Type[] returnTypeRequiredCustomModifiers, System.Type[] returnTypeOptionalCustomModifiers, System.Type[] parameterTypes, System.Type[][] parameterTypeRequiredCustomModifiers, System.Type[][] parameterTypeOptionalCustomModifiers) { throw null; }

Same methods

TypeBuilder::DefineProperty ( string name, System attributes, System callingConvention, System returnType, System parameterTypes ) : System.Reflection.Emit.PropertyBuilder
TypeBuilder::DefineProperty ( string name, System attributes, System returnType, System returnTypeRequiredCustomModifiers, System returnTypeOptionalCustomModifiers, System parameterTypes, System parameterTypeRequiredCustomModifiers, System parameterTypeOptionalCustomModifiers ) : System.Reflection.Emit.PropertyBuilder
TypeBuilder::DefineProperty ( string name, System attributes, System callingConvention, System returnType, System returnTypeRequiredCustomModifiers, System returnTypeOptionalCustomModifiers, System parameterTypes, System parameterTypeRequiredCustomModifiers, System parameterTypeOptionalCustomModifiers ) : System.Reflection.Emit.PropertyBuilder

Usage Example

Esempio n. 1
0
 private static FieldBuilder CréeAttributs(TypeBuilder constructeurDeType, DataColumn colonne)
 {
     FieldBuilder champBldr = null;
     PropertyBuilder constructeurPropriété;
     #region Création de l'attribut
     champBldr = constructeurDeType.DefineField(colonne.ColumnName.ToLower(), colonne.DataType, FieldAttributes.Private);
     #endregion
     #region Création de la Propriété associée
     constructeurPropriété = constructeurDeType.DefineProperty(colonne.ColumnName, System.Reflection.PropertyAttributes.HasDefault, colonne.DataType, null);
     // Choix des attributs
     MethodAttributes attrGetSet = MethodAttributes.Public |
        MethodAttributes.SpecialName | MethodAttributes.HideBySig;
     #region Définition du "getter".
     MethodBuilder constructeurGet = constructeurDeType.DefineMethod("get_" + colonne.ColumnName, attrGetSet, colonne.DataType, Type.EmptyTypes);
     ILGenerator champGetIL = constructeurGet.GetILGenerator();
     champGetIL.Emit(OpCodes.Ldarg_0);
     champGetIL.Emit(OpCodes.Ldfld, champBldr);
     champGetIL.Emit(OpCodes.Ret);
     #endregion
     #region Définition du "setter".
     MethodBuilder constructeurSet = constructeurDeType.DefineMethod("set_" + colonne.ColumnName, attrGetSet, null, new Type[] { colonne.DataType });
     ILGenerator champSetIL = constructeurSet.GetILGenerator();
     champSetIL.Emit(OpCodes.Ldarg_0);
     champSetIL.Emit(OpCodes.Ldarg_1);
     champSetIL.Emit(OpCodes.Stfld, champBldr);
     champSetIL.Emit(OpCodes.Ret);
     #endregion
     #region Association des accesseurs à la propriété
     constructeurPropriété.SetGetMethod(constructeurGet);
     constructeurPropriété.SetSetMethod(constructeurSet);
     #endregion
     #endregion
     return champBldr;
     }
All Usage Examples Of System.Reflection.Emit.TypeBuilder::DefineProperty