ByRef sublinhado com erro “Expression Expected” em VB.Net ao tentar passar um objeto do tipo List(Of clsFooDetail)

StackOverflow https://stackoverflow.com/questions/2375846

Pergunta

Eu trabalho com C# 99% do tempo.No entanto, estou tendo que atualizar algum código VB.Net herdado e encontrar um problema com a sintaxe do código VB.Net.O erro que recebo é que "ByRef" está sublinhado e a tag "Expressão Esperada" aparece quando você passa o mouse sobre "ByRef".

A função "FooDetail.Load" é ​​escrita em C# e espera um objeto List passado como referência.Não tenha problemas para usar a mesma função em outras classes C#.Alguém pode indicar o que há de errado com o código VB.Net abaixo.

Dim FooDetail As New clsFooDetail()
FooDetail.FooID = FooID
Dim lstFooDetail As New List(Of clsFooDetail)
FooDetail.Load(ConnectionString, "Stored Procedure", ByRef lstFooDetail as System.Collection.List(Of(clsFooDetail))
Foi útil?

Solução

Você não pode declarar uma variável em uma chamada de método.Você também não usa o equivalente a "out".E não use “As New” quando o método retornar uma nova lista.Escreva assim:

Dim lstFooDetail As List(Of clsFooDetail)
FooDetail.Load(ConnectionString, "Stored Procedure", lstFooDetail)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top