如果我有一個對象的實例,如何檢查它是否只讀?檢查對象的實例是否爲只讀
我已經通過System.Type的沖刷和大量的IsXxxx()
和GetXxxx()
類型的功能,但沒有IsReadOnly()
,IsWriteable()
,GetReadWriteProperty()
,或沿着這些線路的東西。我猜像myObj.GetType().IsReadOnly()
會太容易了,除了GetType()之外,Object類本身沒有任何用處。
當我谷歌這個問題我得到的所有是使用readonly關鍵字的方法。我想使用反射和GetProperty(),但這是一個存在於列表中的基類<>,我需要這個對象的實例是另一個對象中的唯一屬性,對我來說這樣做我會認爲。
任何想法?
想我下一步需要時間來改進搜索條件更好,我相信這個問題可能是一個副本:http://stackoverflow.com/questions/481883/how-do-i-check-if-a-class-is-readonly-in-c –
你能提供一個你認爲的對象的例子嗎?只讀嗎?在目標層面上,沒有定義這樣的概念。這些字段可能是也可能不是隻讀的,並且這些屬性可能有也可能沒有公共集合,並且它可能被標記爲「[ImmutableObject(true)]」 - 但是......至少有兩個*不會實際上它是不可變的*,第三個(字段)不是強制的或過於通用的(因爲這些字段將是私有的) –
@Marc Gravell:PropertyInfo for一個類型給出了一個CanRead和CanWrite,我正在尋找一種方法來獲取那些在任何給定的對象。 –