例如,在ASP.NET中,我們可以反思AppDomain中的程序集,或者使用我們可以獲取有關類的元數據(道具,方法等)的類型。在Silverlight中用於提取類的元數據,提取依賴項屬性等的技術是什麼?Silverlight reflection
6
A
回答
5
反射存在於Silverlight中,並在完整的.NET Framework中提供了一部分API。
一個顯着的區別是你不能反映到Silverlight中的私有成員(或者你可以在你自己的程序集中,但邊界應該變得很快)。這是一個安全功能,可以確保您不會混淆框架本身的內部。
除此之外(固然很大)的限制,Reflection應該基本相同。
4
除了奧斯汀所說的之外,Silverlight中的Reflection規則是您只能通過反射訪問任何您可以通過正常代碼訪問的內容。所以這不僅僅是私人成員。您只能在類本身或任何繼承它的類中反射受保護的成員。
有許多缺少API的作品,但在一般的大多數事情應該是可能的,即使他們需要多一點的工作比在完整的.NET
0
安全注意事項的反思 反射提供了獲取信息的能力關於類型和成員,以及訪問成員。在Silverlight中,您可以使用反射來執行以下任務:
枚舉類型和成員,並檢查其元數據。
枚舉和檢查組件和模塊。
訪問公共成員。
在調用代碼的程序集中訪問內部成員(Visual Basic中的朋友成員)。 (在反思中,這被稱爲彙編級訪問。)
在Silverlight中,您不能使用反射來訪問私有類型和成員。如果類型或成員的訪問級別會阻止您在靜態編譯的代碼中訪問它,則不能通過使用反射來動態訪問它。
相關問題
- 1. nBuilder Testdatagenerator和Reflection
- 2. C#Reflection&Generics
- 3. AS3(Pixelfumes Reflection Class)
- 4. C#Reflection - GetMethod
- 5. C#Reflection,assembly.load byte []
- 6. Java Interface Reflection Alternatives
- 7. Java Reflection Imports
- 8. Java - BigDecimal和Reflection
- 9. iPhone + JSON + Reflection
- 10. Reflection和WCF
- 11. WinRT Reflection(C++/CX)
- 12. scala reflection without typeOf
- 13. XAML For Reflection Effect
- 14. Jmock with reflection
- 15. 關於ComponentModel和Reflection
- 16. NoSuchMethodException while using JAVA Reflection
- 17. 什麼是「monadic reflection」?
- 18. iCarousel with per image reflection
- 19. 使用Reflection訂閱Prism EventAggregator事件
- 20. Swift Reflection映射屬性
- 21. .NET Reflection創建類屬性
- 22. SQL Alchemy和CX_Oracle Reflection問題
- 23. actionscript3:reflection-class applied on rotationY
- 24. CreateDelegate而不是Reflection爲SetValue
- 25. java.lang.NoSuchFieldError:在Tomcat部署期間的REFLECTION
- 26. 使用Reflection和LINQ查詢ApplicationDataService
- 27. 如何在C#中使用Linq和Reflection?
- 28. Kotlin Reflection運算符得到實現
- 29. C#:Reflection:子類的訪問屬性
- 30. .NET/C# - Reflection - 曾經使用過的System.IO.File
您可以反思私人成員,但不能修改或調用它們。我曾嘗試爲FieldInfo調用GetValue,但無法調用SetValue,它會引發異常。 – 2011-03-17 03:22:23