我想要創建一個只讀的鍵集合,它實現了IDictionary <'K,'V>和IEnumerable <'V>。以明顯的方法,我得到以下錯誤:如何創建一個類型,實現IDictionary <'K, 'V>和IEnumerable <'V>
This type implements or inherits the same interface at different generic instantiations 'IEnumerable<'V>' and 'IEnumerable<KeyValuePair<'K,'V>>'. This is not permitted in this version of F#.
是否有實現這一目標的一個不同的方式?
編輯 - 由於這似乎是F#不可逾越的限制,實現這一目標的習慣方式是什麼?想到的一個想法是提供返回所需數據視圖的成員,例如成員x.List:IList <'V>和成員x.Dict:IDictionary <'K,'V>。對象表達式可以用來提供實現。任何其他想法?