¿Existen recursos 'buenos' para portar una aplicación de winforms de VB.NET a C#? Estoy seguro de que hay software que solo traduce el código, pero estoy buscando refactorizar el código al mismo tiempo. Mantenerlo en su forma actual es problemático, ya que utiliza algunas de las prácticas de 'mal diseño' que permite VB.NET, y complicaría aún más el mantenimiento futuro. ¿Alguien ha pasado por ese proceso y cómo lo hizo? ¿Utilizaste un enfoque de traducción/refactorización? ¿Usó el producto final para recrear la funcionalidad sin mirar la base de código actual durante la mayor parte? ¿Qué recomendaría (colectivamente)?Vinculación de aplicaciones de Winforms VB.NET a C#
actualización:
Como le decía Grauenwolf, manteniéndolo en su idioma actual presenta los siguientes problemas:
- No ser capaz de añadir fácilmente características. VB.NET no es un lenguaje en el que sea sólido. Aprecio la ironía de aprender el idioma para trasladarlo, pero el mantenimiento futuro deberá dar cuenta de alguien que no conoce VB.NET.
- El resto de la aplicación se ha portado a C# (hace mucho tiempo, de hecho); todas las funciones que nos gustaría agregar dependen del desacoplamiento de la aplicación (ahora mismo está muy unido). Mis opciones son refactorizarlo en un idioma con el que no estoy muy familiarizado o refactorizarlo en un idioma que entiendo.
Para cualquier persona que votó la cuestión hacia abajo, no estoy realmente seguro de por qué que hizo; la preocupación no es si debería dejarlo en VB.NET; la preocupación es cuál es el costo futuro de no portarlo ahora. Si voy a ahorrar grandes gastos para solucionarlo, ¿por qué no dar un paso más y hacerlo más fácil para un futuro programador?
Nota del autor: No había mirado esta pregunta en años, había una respuesta reciente, así que cambié mi 'respuesta' a la pregunta y borré la 'respuesta' (ya que no era realmente una responder).
Publiqué más información en una respuesta a la pregunta a continuación. Además, y no sé si esto está relacionado, cada vez que hago clic en 'Ir a la definición' para un componente C# que escribimos (uno que está dentro de otro proyecto en la misma solución), se abre el navegador de objetos en lugar de definición –
¿Alguna idea más? –
La inhabilidad irregular de ir y venir entre los proyectos de C# y VB.NET a través de "Ir a definición" es definitivamente una molestia. Por otro lado, la compilación incremental de VB.NET es realmente agradable (aunque el uso de ReSharper mejora las cosas para C#). – McKenzieG1