Pergunta

Adicionei uma referência a uma montagem personalizada em um relatório do relatório (2008). Funciona muito bem quando eu chamo de uma caixa de texto (por exemplo, = Assembly.class.function ()), mas quando eu a enrolar em um bloco de código personalizado:

Function GetString(ByVal key as String) as String

return Willow.Reporting.Localization.Resource.Get(User!Language, "WAR", "Title", key)

end function

Recebo o erro de compilação "A referência a um membro não compartilhada requer uma referência de objeto".

A classe C# e as funções são estáticas.

Como teste, também criei uma vrsion não estática da classe, criei uma instância e acessei-a através do nome da instância no código personalizado, mas também sem sorte.

É possível chamar uma montagem personalizada do bloco de código nos serviços de relatórios?

Foi útil?

Solução 2

O VS IDE carrega a montagem apenas uma vez, na carga - para que você precise fechar/reabrir versus cada vez que fizer uma mudança de montagem (remover a referência e a redefinição também não funcionou)

Você também pode usar chamadas estáticas e métodos de instância e funciona bem do código incorporado, por exemplo,:

Function Test() as String
    return Instance.GetString()
End Function

Function Test2() as String
    return WR.StaticTest.GetString()
End Function

Outras dicas

Talvez você seja um programador C#? "Compartilhado" em VB significa estático. A mensagem significa que você precisa criar uma instância da classe para chamar um método (instância) da classe.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top