[英]Reflection: Set a property of a generic object using delegates
我正在開發一個簡單的ORM庫,實際上非常簡單...
我有一個T型查詢
public IEnumerable<T> Query<T>(string query)
該方法采用T類,它獲取屬性,遍歷它們並相應地設置它們
aProperty.SetValue(tmpGenericObjectOfTypeT, newValue, null);
我的問題是SetValue的運行速度非常慢,我看到了兩個選擇,即使用Reflection.Emit或使用委托,但是我不知道如何執行其中的任何一種。
正如我所讀的,使用委托有點優雅,我想要那種解決方案,但是我真的不知道該怎么做,我搜索並發現了很多關於如何使用委托調用方法的知識,而不是如何設置屬性...
HyperDescriptor效果很好(基於ReflectionEmit)。 http://www.codeproject.com/Articles/18450/HyperDescriptor-Accelerated-dynamic-property-acces
“委托”方法可能是指表達式樹?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.