none
Conversión de Visual Basic a C# RRS feed

  • Pregunta

  • Buenas noches.

    Me han dado un código en Visual Basic el cual hay que convertir a C# ya que la idea de la nueva aplicación es que funcione exactamente igual a la anterior, sin embargo los convertidores en línea de VB a C# no me convierten correctamente dos líneas del código y no sé como hacer para reemplazarlas en código C#, las dos líneas son las siguientes:

    1. Select Case dt.Rows(counter).Item("alineacion")  en este caso que me devuelve "dt.Rows(counter).Item("alineacion" y cómo la puedo reemplazar con un switch?

    2. rpt.AddRaw(" " & Chr(10) & " " & Chr(10) & " " & Chr(10)) qué hace la función:  " " & Chr(10) & " " & Chr(10)) y cómo la puedo reemplazar en C#?


    Saludos! Steven Matamoros

    miércoles, 5 de febrero de 2014 1:07

Respuestas

  • 1) El dt.Rows(counter).Item("alineacion") te devuelve un dato de tipo Object. No se puede hacer un swith sobre el object, así que tendrás que hacerle un "cast" al tipo correcto (string o integer), que necesitas conocerlo tú sabiendo qué clase de dato es "alineacion". No se puede deducir del código fuente.

    2) Lo que hace es concatenar espacios en blanco y saltos de línea. Una forma de escribirlo en C# es esta:

        rpt.AddRaw(" \n \n \n");

    miércoles, 5 de febrero de 2014 18:58
  • esta es una pagina de conversion de codigo

    http://www.developerfusion.com/tools/convert/vb-to-csharp/

    miércoles, 5 de febrero de 2014 20:27

Todas las respuestas

  • 1) El dt.Rows(counter).Item("alineacion") te devuelve un dato de tipo Object. No se puede hacer un swith sobre el object, así que tendrás que hacerle un "cast" al tipo correcto (string o integer), que necesitas conocerlo tú sabiendo qué clase de dato es "alineacion". No se puede deducir del código fuente.

    2) Lo que hace es concatenar espacios en blanco y saltos de línea. Una forma de escribirlo en C# es esta:

        rpt.AddRaw(" \n \n \n");

    miércoles, 5 de febrero de 2014 18:58
  • esta es una pagina de conversion de codigo

    http://www.developerfusion.com/tools/convert/vb-to-csharp/

    miércoles, 5 de febrero de 2014 20:27
  • esta es una pagina de conversion de codigo [...]

    Es inútil. La primera de las conversiones no la puede hacer una página de conversión. Se trata de un "select case" sobre un dato de tipo Object, que en VB es lícita porque en tiempo de ejecución se examina su valor haciendo las conversiones implícitas cuando sea necesario, pero en C# no se admite dentro de un switch. Como el tipo de dato solo se sabe en tiempo de ejecución, pero no puede deducirse viendo la sentencia, no es posible que una herramienta de conversión haga una conversión correcta con sólo examinar el código fuente.

    jueves, 6 de febrero de 2014 7:42
  • Muchas gracias por sus respuestas, me han sido de gran ayuda!

    Saludos! Steven Matamoros

    viernes, 7 de febrero de 2014 0:27