Como acessar membro protegido
Eu tenho o seguinte código no tipo de extensão (em F #) que chama um método protegido de uma classe que herda de (em C #), mas recebo a exceção (veja abaixo). Existe uma solução alternativa para isso?
let getPagereference id =
this.ConstructPageReference(id)
O construtor de membro ou objeto 'ConstructPageReference' não está acessível. Os membros privados só podem ser acessados de dentro do tipo de declaração. Os membros protegidos podem ser acessados apenas a partir de um tipo de extensão e não podem ser acessados a partir de expressões lambda internas.
Atualizar:
Eu tentei seguir, mas obtendo o mesmo resultado
let getPagereference id =
base.ConstructPageReference(id)
Atualização 2 (solução):
aqui está o código como estava:
type MyNewType() =
inherit SomeAbstractType()
let getPagereference id =
base.ConstructPageReference(id)
override this.SomeMethod()=
let id = 0
let pr = getPagereference id
é assim que deveria ter sido:
type MyNewType() =
inherit SomeAbstractType()
member this.ConstructPageReference(id) =
base.ConstructPageReference(id)
override this.SomeMethod()=
let id = 0
let pr = this.ConstructPageReference(id)