none
convertir de vb.net a c# RRS feed

  • Pregunta

  • hola a todos

    Aqui de nuevo molestando al foro, tengo un codigo que encontre en internet pero esta echo en vb.net y estoy programando en c#; el codigo modifica el app.confing (la cadena de conexion); he tratato con programas online de conversion de vb.net pero no lo realiza, les agradeceria si pueden ayudarme.

    Public Sub CambiarCNX(Cadena as String)
      Dim exePath as String = System.IO.Path.Combine(Environment.CurrentDirectory, Environment.GetCommandLineArgs()(0))
      Dim MiAppConfig as Configuration = ConfigurationManager.OpenExeConfiguration(exePath)
      Dim miSeccion as ConnectionStringsSection = DirecCast(MiAppConfig.GetSection("connectionStrings"), ConnectionStringsSection)
      MiSeccion.ConnectionStrings("ConexionCommon").ConnectionString = Cadena
    End Sub

    los problemas que encuentro cuando lo convierto es el siguiente

     string exePath = System.IO.Path.Combine(Environment.CurrentDirectory, Environment.GetCommandLineArgs()(0));
                Configuration MiAppConfig = ConfigurationManager.OpenExeConfiguration(exePath);
    
                ConnectionStringsSection MiSeccion = DirecCast(MiAppConfig.GetSection("connectionStrings"), ConnectionStringsSection);
                MiSeccion.ConnectionStrings("ConexionCommon").ConnectionString = Cadena;
    
                MiAppConfig.Save();
    

    - Environment.GetCommandLineArgs()

    - DirecCast(MiAppConfig.GetSection("connectionStrings"), ConnectionStringsSection)

    - ConnectionStrings

    Saludos


    Luis Ormeño

    martes, 9 de septiembre de 2014 3:08

Respuestas

  • Cosas a cambiar:

    - El indexador de C# usa paréntesis cuadrados en lugar de redondos. Por lo tanto, GetCommandLineArgs()[0] en lugar de (0), y lo mismo en el ConnectionStrings(...), que pasa a ConnectionStrings[...].

    - El DirectCast de VB se expresa como un cast en C#:

    DirectCast(algo, tipo) se convierte en (tipo)algo

    martes, 9 de septiembre de 2014 6:07
    Moderador

Todas las respuestas

  • Cosas a cambiar:

    - El indexador de C# usa paréntesis cuadrados en lugar de redondos. Por lo tanto, GetCommandLineArgs()[0] en lugar de (0), y lo mismo en el ConnectionStrings(...), que pasa a ConnectionStrings[...].

    - El DirectCast de VB se expresa como un cast en C#:

    DirectCast(algo, tipo) se convierte en (tipo)algo

    martes, 9 de septiembre de 2014 6:07
    Moderador
  • También existen páginas en Internet que te hacen el paso automático de código de VB.NET a C# (entre otros); esta página es sólo un enemplo de ellas: http://www.developerfusion.com/tools/convert/vb-to-csharp/

    martes, 9 de septiembre de 2014 6:30
  • Muchas gracias

    funciono con los datos que me diste.

    Saludos


    Luis Ormeño

    martes, 9 de septiembre de 2014 14:11