利用反射獲取資料列 emit生成屬性 單例模式

2022-01-15 02:30:51 字數 1140 閱讀 7463

1:idictionary可以儲存資料,將拼接的sql可以儲存到這裡下次可以使用

定義自定義屬性表和列

typeof(t).getcustomattributes(type ty,bool flag)獲取類的自定義的屬性

typeof(t).getproperties()獲取類下面的屬性

使用emit獲取屬性的型別

public

static actionobject> emitsetter(string

propertyname)

, type.module);

var ilgenerator =dynamicmethod.getilgenerator();

var callmethod = type.getmethod("

set_

" + propertyname, bindingflags.instance | bindingflags.ignorecase |bindingflags.public);

var parameterinfo = callmethod.getparameters()[0

];

var local = ilgenerator.declarelocal(parameterinfo.parametertype, true

); ilgenerator.emit(opcodes.ldarg_1);

if(parameterinfo.parametertype.isvaluetype)

else

ilgenerator.emit(opcodes.stloc, local);

ilgenerator.emit(opcodes.ldarg_0);

ilgenerator.emit(opcodes.ldloc, local);

ilgenerator.emitcall(opcodes.callvirt, callmethod,

null

); ilgenerator.emit(opcodes.ret);

return dynamicmethod.createdelegate(typeof(actionobject>)) as actionobject>;

}

php 利用反射API獲取類資訊

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!php具有完整的反射api,可以對類 介面 函式 方法和擴充套件進行反向工程。反射api並提供方法取出函式 類和方法中的文件注釋。本文將介紹使用php反射api獲取類資訊的方法,提供完整演示 ref new reflectionclass clas...

利用反射獲取類的所有字段

以下是利用反射獲取類refpoint中所有的字段。一,refpoint類 public class refpoint public class class02 二,列印出所有類refpoint中的所有字段 refpoint refpoint01 new refpoint 3 type typeobj...

利用反射,註解獲取建表的sql

前言 因為專案很老,還是用的原生sqlite,因為建表還是手動構建sql,cursor轉bean或者list都不靈活,特此用反射和註解做了優化處理 首先建立我們的標註,有tablename,primary,notnull,defaulttext,defaultint,defaultdecimal,a...