Conversão - VB.Net para C#

14/02/2012

0

Boa tarde a todos do devmedia!

Mais uma vez venho pedia a ajuda de vcs. Estou migrando um sistema em vb.net para c#.
Existe uma classe que serve para armazenar os parâmetros globais da aplicação e manter na sessão do usuário. Estou com dificuldades para migrar algumas propriedades dessa classe, conforme abaixo:

A propriedade pxvaPropriedade não tem um tipo de retorno definido e é como se fosse uma função que verifica a existência de uma determinada propriedade gravada numa coleção. Ela é chamada no get{} e no set{} de todas as outras propriedades para retornar e setar os valores. Quando tento converter isso para o C#, ele não reconhece a pxvaPropriedade sem um tipo de retorno. Tentei passar como tipo de retorno o tipo object, mas quando faço isso,da erro no set{} de todas as outras propriedades, dizendo que não posso atribuir o valor. Por sua vez, no get{} é preciso converter para o tipo de retorno da propriedade.
Alem disso, quando converto o código da pxvaPropriedade para C#, acontece um erro tanto no get{} quanto no set{} referente a ausencia de ; (ponto e virgula) logo após a chave.

Sei que está meio confuso, mas se alguém puder ajudar, agradeço muito! Estou precisando resolver isso com urgencia!
Qualquer coisa meu e-mail é thomasthbm@yahoo.com.br e meu msn é tho_moreira@hotmail.com

Abaixo um exemplo do codigo da classe, mencionado acima:


Estrutura em VB.NET:


<Serializable()> Public Class bntcluparglobal

Private pxvaItens As System.Collections.Hashtable

Public pxvaTotalPropriedades As Long


Public Property pxvaempresa() As String
Get
Return pxvaPropriedade(pxvaempresa)
End Get
Set(ByVal Value As String)
pxvaPropriedade(pxvaempresa) = Value
End Set
End Property

Public Property pxvalinhasistema() As String
Get
Return pxvaPropriedade(pxvalinhasistema)
End Get
Set(ByVal Value As String)
pxvaPropriedade(pxvalinhasistema) = Value
End Set
End Property

...

Public Property pxvaPropriedade(ByVal axvaNome As String)
Get

Dim vxvanome As String

vxvanome = LCase(axvaNome)
Verifica se a propriedade existe
If Not Me.pxvaItens.Contains(vxvanome) Then
Throw New BntCpUTrErro.BntClUErro(90012, , , , , , BntCpUTrErro.BntClUErro.EnumErroFonte.vbErroAmbiente, BntCpUTrErro.BntClUErro.EnumErroSeveridade.vbErroFatal, axvaNome, ParGlobal & TypeName(Me))
End If

Retorna a propriedade
pxvaPropriedade = Me.pxvaItens(vxvanome)
End Get
Set(ByVal Value)

Dim vxvanome As String

vxvanome = LCase(axvaNome)

Verifica se a propriedade existe
If Not Me.pxvaItens.Contains(vxvanome) Then
Throw New BntCpUTrErro.BntClUErro(90012, , , , , , BntCpUTrErro.BntClUErro.EnumErroFonte.vbErroAmbiente, BntCpUTrErro.BntClUErro.EnumErroSeveridade.vbErroFatal, axvaNome, ParGlobal & TypeName(Me))
End If

Recebe a propriedade
Me.pxvaItens(vxvanome) = Value
End Set
End Property
Thomás Moreira

Thomás Moreira

Responder

Posts

15/02/2012

Thomás Moreira

E ai galera, alguém pra ajudar???

Valeu!!!
Responder

18/02/2012

Thomás Moreira

Alguem ai pra dar uma ajuda??
Responder

24/02/2012

Joel Rodrigues

Cara, se tiver como me mandar o código da classe, pq aqui é meio chato de ler.
joelrlneto@gmail.com
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar