Ok Вывод типа B из базового класса A.
A реализует IDisposable явный, но я должен выполнить дополнительную очистку в B, поэтому я реализую IDisposable в B:
interface IDisposable with
member i.Dispose() =
// ... additional work
base.Dispose() // <- want to do but cannot
Вопрос: как получить доступ к методу Dispose из базы?
(base :> IDisposable).Dispose()
дает ошибку компилятора: Unexpected symbol ':>' in expression. Expected '.' or other token.
Выполнение чего-то типа
(i :> IDisposable).Dispose()
конечно, дает a StackOverflowException во время выполнения - так как я могу это сделать? Извините, но никогда не сталкивался с чем-то вроде этого раньше...