Pregunta

Mientras que la búsqueda de la interweb una solución para mi VB.net los problemas a menudo me encuentro útiles artículos sobre un tema específico, pero el código es C#.Eso no es gran problema, pero cuesta algo de tiempo para convertir a VB manualmente.Hay algunos sitios que ofrecen convertidores de código de C# a VB y viceversa, pero para corregir todos los defectos después de que el código de conversión es casi como que consumen tiempo como hacerlo por mí mismo en primer lugar.

Hasta ahora estoy utilizando http://labs.developerfusion.co.uk/convert/csharp-to-vb.aspx

¿Sabe usted algo mejor?

¿Fue útil?

Solución

Si usted no puede encontrar un buen conversor, siempre se puede compilar el código c# y el uso de la dissasembler en Reflector para ver el código de Visual Basic.Algunos de los nombres de variable va a cambiar.

Otros consejos

Telerik ha un buen conversor que se basa en SharpDevelop que ha funcionado bastante bien en los últimos años, a pesar de que no ha sido actualizado en años (debido a que está basado en SharpDevelop).

He llegado recientemente a través de un roslyn convertidor así.No sé bien cómo funciona o cómo se mantiene bien que es, pero como es de código abierto, siempre se puede tenedor y actualizar según sea necesario.

SharpDevelop tiene incorporado un traductor entre C# y VB.NET.No es perfecta pensado (por ejemplo,el sistema opcional de valores en VB.NET no tienen un equivalente en C#, así que la firma del convertidor método debe ser editado), pero usted puede ahorrar algo de tiempo, como usted está haciendo todas las operaciones dentro de una IDE y no de una página web (copia de código de C#, pegar, golpear el botón, copiar VB.NET código, pegar en IDE :P )

Creo que la mejor cosa a hacer es aprender lo suficiente de la otra lengua, de modo que usted puede volver a escribir a mano, hay algunos bastante difíciles diferencias en ciertos aspectos que no estoy seguro de que una converter se manejar muy bien.Por ejemplo, compare mi traducción de C# a VB de los siguientes:

public class FileSystemEventSubscription : EventSubscription
{
    private FileSystemWatcher fileSystemWatcher;

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

se convierte en

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

El C# es de la Actividad Personalizada Marco de la muestra, y me temo que he perdido el enlace a la misma.Pero contiene algo de desagradable aspecto de la herencia (de un VB punto de vista).

Estoy con una conexión Visual Studio 2012 plug-in llamado Idioma Convertir

Funciona perfectamente en 2010/2012, lamentablemente no funciona en VS 2013 todavía.

La conversión no es 100% exacto, pero es sin duda muy útil, para lanzar por primera vez es un poco complicado, verifique antes la imagen de abajo : enter image description here

Última vez que lo comprobé, SharpDevelop tiene uno y es de código abierto, demasiado.

Usted puede cargar su archivo DLL o EXE en Redgate (anteriormente Lutz Roeder s) .Net Reflector, seleccione su método y, a continuación, seleccione el idioma deseado de la combinación de idioma.El código del método seleccionado se mostrará en el idioma seleccionado.

Espero que esto ayude.

Usted puede probar este convertidor de.Hay una funcionalidad para C# a VB y VB a C#.

Espero que esto ayude.

Carlos Aguilar, Mares ha tenido un convertidor en línea por alrededor de 40 forevers - Código Traductor pero yo estaría de acuerdo en que el Reflector es la mejor respuesta.

Mientras no responder a su pregunta, he de decir que he estado en una situación similar.

Me di cuenta de que los ejemplos de código en C# se un poco incómodo cuando me estaba empezando a cabo en .NET, pero un par de semanas en mi primer proyecto (después de haber crecido más familiarizado con el .NET framework y VB.NET en sí), me pareció que era muy interesante, y a veces beneficioso tener a la ingeniería inversa del código de C#.No sólo en términos de sintaxis, sino también aprender acerca de las sutiles diferencias en el enfoque - es útil tener la mente abierta en este sentido.

Me quedo con las VB.NET como puedo aprender más y más sobre el marco, pero antes de tiempo me voy a sumergir mi a en C# con la intención de convertirse en "multi-lingual'.

Actualmente yo uso un plugin para VS2005 que he encontrado en CodeProject (http://www.codeproject.com/KB/cs/Code_convert_add-in.aspx);el uso de un servicio externo (http://www.carlosag.net/Tools/CodeTranslator/) para realizar la traducción.

En ocasiones, cuando estoy offline, yo uso una herramienta de convertidor (http://www.kamalpatel.net/ConvertCSharp2VB.aspx).

El uno en http://www.developerfusion.com/tools/convert/csharp-to-vb/ (url) ahora soporta .NET 3.5 sintaxis (gracias a la #desarrollar chicos una vez más), y se copia automáticamente los resultados en el portapapeles :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top