Pergunta

Embora a pesquisa na interweb para uma solução para meus problemas VB.net muitas vezes eu encontrar artigos úteis sobre um tópico específico, mas o código é C #. Isso não é grande problema mas custou algum tempo para convertê-lo em VB manualmente. Existem alguns sites que os conversores de código de oferta de C # para VB e vice-versa, mas para corrigir todas as falhas após o código de conversão é quase tão demorado como fazê-lo por mim mesmo em primeiro lugar.

Até agora eu estou usando http://labs.developerfusion.co .uk / converter / csharp-to-vb.aspx

Você sabe algo melhor?

Foi útil?

Solução

Se você não consegue encontrar um bom conversor, você sempre pode compilar o código c # e usar o dissasembler em refletor para ver o código do Visual Basic. Alguns dos nomes de variáveis ??vai mudar.

Outras dicas

Telerik tem um bom conversor que é baseado em SharpDevelop que tem funcionado muito bem ao longo dos anos, embora não foi atualizado nos últimos anos (devido ao fato de estar baseado em SharpDevelop).

Eu vim recentemente através de uma Roslyn Conversor base bem . Eu não sei o quão bem ele funciona ou como bem conservado que é, mas como é open source você sempre pode bifurcar-lo e atualizá-lo conforme necessário.

SharpDevelop tem um built-in tradutor entre C # e VB.NET. não é pensamento perfeito (por exemplo, os valores opcionais em VB.NET não tem um equivalente em C #, assim que a assinatura do método conversor deve ser editado), mas você pode economizar algum tempo, como você está fazendo todas as operações dentro de um IDE e não uma página (copiar código C #, colar, botão de hit, copie o código VB.NET, cole no IDE: P)

Eu acho que a melhor coisa a fazer é aprender o suficiente da outra língua para que você pode reescrever a mão, há algumas diferenças bastante difícil em alguns aspectos que eu não estou certo de um conversor iria lidar muito bem. Por exemplo, comparar a minha tradução do C # para VB do seguinte:

public class FileSystemEventSubscription : EventSubscription
{
    private FileSystemWatcher fileSystemWatcher;

    public FileSystemEventSubscription(IComparable queueName, 
        Guid workflowInstanceId, FileSystemWatcher fileSystemWatcher) : base(queueName, workflowInstanceId)
    {
        this.fileSystemWatcher = fileSystemWatcher;
    }

se torna

Public Class FileSystemEventSubscription
    Inherits EventSubscription  
    Private myFileSystemWatcher As FileSystemWatcher
    Public Sub New(ByVal QueueName As IComparable, ByVal WorkflowInstanceID As Guid, ByVal Watcher As FileSystemWatcher)
        MyBase.New(QueueName, WorkflowInstanceID)
        Me.myFileSystemWatcher = Watcher
    End Sub

A C # é a partir da amostra personalizado Framework atividades, e eu tenho medo que eu perdi o link para ele. Mas contém alguma herança de vista desagradável (a partir de um ponto de vista VB).

Eu estou usando um Visual Studio livre 2.012 plug-in chamado Idioma Convert

Ele funciona perfeitamente em 2010/2012, infelizmente, não está funcionando no VS 2013 ainda.

A conversão não é 100% exato, mas é definitivamente muito útil, para o lançamento, pela primeira vez, é um pouco complicado, verificar antes de a imagem abaixo: enter descrição da imagem aqui

Última vez que verifiquei, SharpDevelop tem um e é open source também.

Você pode carregar a DLL ou EXE em de Redgate (anteriormente de Lutz Roeder) Net Reflector , selecione o método e, em seguida, o idioma desejado a partir da combinação de idioma. O código do método selecionado será exibido no idioma selecionado.

Espero que isso ajude.

Você pode tentar este conversor . Há funcionalidade para C # para VB e VB para C #.

Espero que isso ajude.

Carlos Aguilar Mares teve um conversor online por cerca de 40 forevers - Código Tradutor mas eu concordaria que refletor é a melhor resposta.

Apesar de não responder à sua pergunta, eu vou dizer que eu estive em uma posição similar.

Eu percebi que as amostras de código em C # foram estranho quando eu estava realmente começando no .NET, mas algumas semanas em meu primeiro projeto (depois de crescidos mais familiarizados com o .NET framework ea própria VB.NET), eu encontrei que era interessante e às vezes benéfico ter a engenharia reversa do código C #. Não apenas em termos de sintaxe, mas também aprender sobre as diferenças sutis na abordagem - é útil para ter a mente aberta a este respeito

.

Eu estou furando com VB.NET como eu aprender mais e mais sobre a estrutura, mas em pouco tempo eu vou mergulho meu para em C # com a intenção de tornar-se 'multi-lingual'.

Atualmente eu uso um plugin para o VS2005 que eu encontrei no CodeProject ( http: //www.codeproject.com/KB/cs/Code_convert_add-in.aspx ); que usar um serviço externo ( http://www.carlosag.net/Tools/CodeTranslator/) para realizar a tradução.

Às vezes, quando estou fora de linha, eu uso uma ferramenta de conversor ( http: //www.kamalpatel .net / ConvertCSharp2VB.aspx ).

A única em http://www.developerfusion.com/tools / converter / csharp-to-vb / (nova url) agora suporta .NET 3.5 sintaxe (graças aos caras #develop mais uma vez), e irá copiar automaticamente os resultados para a área de transferência:)

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