利用反射代替switch 轉

2022-01-19 04:33:39 字數 1152 閱讀 2334

根據傳進來不同的值,呼叫不同的方法

view code

protected void btn_switchclick(objectsender, eventargs e)

ltrresult.text =result;

}

下面利用反射機制實現,首選需要乙個自定義屬性類

view code

public classactionmethodattribute:attribute

}

然後定義乙個基類

view code

public abstract classgenericbll

}cachehandler.setcache(t.tostring(), ht);

}else

returnht;

}/// ///return message;

///

///

///

public string doaction(stringactionname)

).tostring();

}else not defined.!", actionname);

//throw new exception(errmsg);

} returnmessage;}}

實現類繼承,

view code

public classreflecttest:genericbll

[actionmethod("b")]

public stringgetb()

[actionmethod("c")]

public stringgetc()

}

具體的呼叫

view code

protected void btn_reflectclick(objectsender, eventargs e)

aspx中的**如下

view code

選d會提示沒有d方法

asp:listitem>

asp:listitem>

asp:listitem>

asp:listitem>

asp:dropdownlist>

反射簡化switch語句

1.乙個簡單工廠類 public class factorymodule return module 如果增加乙個新的模組,就需要接著寫case.能不能不動這塊實現擴充套件呢?能!使用反射。2.改寫為反射類 public class factorymodule catch instantiation...

利用反射實現物件轉json格式字串

一 序言 json 資料的書寫格式是 名稱 值,因為json具有鮮明的格式,我們常用它來作為資料傳輸載體。我們在專案中經常會把從資料庫得到的資料轉成json格式傳到前台,接收後進行解析,下面這個是我寫的乙個工具類,利用反射將物件中的屬性,值 並轉為json格式。二 實現背景 在專案 進行編寫時,會經...

VBA 利用字典代替VLOOKUP

sub 代替vlookup 方法一 dim d,ar,br,cr,wb as workbook set d createobject scripting.dictionary br worksheets sheet1 a1 currentregion 需要配置的資料表 ar worksheets r...