none
Error Variable de objeto o de bloque With no establecida-Al elegir conexión a BD desde App.config RRS feed

  • Pregunta

  • Hola amigos

    Tengo ya algunos días batallando con este error y no he podido resolverlo.

    Ya había preguntado en una entrada anterior de otra persona pero ésta pregunta no era la principal así que ya no se le dió importancia y aquel tema se dió por cerrado.

    Lo que estoy tratando de hacer es elegir una de dos conexiones a base de datos que están declaradas en un app.config en base al valor que se capture en un textbox. Luego se deberá imprimir un reporte con la información de la conexión correspondiente.

    Este es mi código

    Imports System.Data.SqlClient
    
    Public Class Form1
        Public Property ConfigurationManager As Object
    
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
           
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    
            If TextBox2.Text = "1" Then
                Using Conx As New SqlConnection(ConfigurationManager.ConnectionStrings("ProyectoConxn.My.MySettings.ProyConnectionString").ConnectionString)
                    Conx.Open()
                    Me.ADC_SP_RTableAdapter.Fill(Me.ProyDataSet.ADC_SP_R, CInt(TextBox1.Text))
                    Me.ReportViewer1.RefreshReport()
                    Conx.Close()
                End Using
    
    
            ElseIf TextBox2.Text = "2" Then
                Using Conx As New SqlConnection(ConfigurationManager.ConnectionStrings("ProyectoConxn.My.MySettings.ProyConnectionString2").ConnectionString)
                    Conx.Open()
                    Me.ADC_SP_RTableAdapter.Fill(Me.ProyDataSet.ADC_SP_R, CInt(TextBox1.Text))
                    Me.ReportViewer1.RefreshReport()
                    Conx.Close()
                End Using
            End If 
        End Sub
    End Class


    En apariencia no tengo ningún error de sintaxis, pero el problema viene cuando trato de imprimir el reporte (Luego de haber capturado el 1 o el 2 y haber puesto un parámetro para que lo tome el procedimiento almacenado) me marca error en estas líneas:

    Using Conx As New SqlConnection(ConfigurationManager.ConnectionStrings("ProyectoConxn.My.MySettings.ProyConnectionString").ConnectionString)
    Using Conx As New SqlConnection(ConfigurationManager.ConnectionStrings("ProyectoConxn.My.MySettings.ProyConnectionString2").ConnectionString)

    Y me arroja este mensaje:


    El app.config tiene este código:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <configSections>
        </configSections>
        <connectionStrings>
            <add name="ProyectoConxn.My.MySettings.ProyConnectionString"
                connectionString="Data Source=nombre.dyndns.com;Initial Catalog=DBVENTAS;Persist Security Info=True;User ID=sa;Password=123"
                providerName="System.Data.SqlClient" />
            <add name="ProyectoConxn.My.MySettings.ProyConnectionString2"
                connectionString="Data Source=nombre2.dyndns.com;Initial Catalog=DBVENTAS;Persist Security Info=True;User ID=sa;Password=123"
                providerName="System.Data.SqlClient" />
        </connectionStrings>
        <startup>
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
        </startup>
    </configuration>

    El app.config está en el mismo proyecto y también está dentro de la carpeta bin del proyecto. Alguna sugerencia que puedan hacerme? Estoy muy ansioso de resolverlo pero no lo he logrado :(

    Gracias y saludos.

    Uso SQL Server 2008 R2 y Visual Studio 2015

           
    • Editado Zarpis martes, 19 de diciembre de 2017 19:26
    martes, 19 de diciembre de 2017 19:23

Respuestas

    • Propuesto como respuesta Pablo RubioModerator martes, 19 de diciembre de 2017 21:35
    • Editado HQ56 miércoles, 20 de diciembre de 2017 13:38
    • Marcado como respuesta Pablo RubioModerator martes, 26 de diciembre de 2017 22:48
    martes, 19 de diciembre de 2017 20:12
  • Hola Zarpis

    Con referente a tu consulta, te recomiendo que visites el siguiente enlace (en inglés) que te voy a compartir ya que, en el explica las posibles causas del error que se te muestra al momento de ejecutar tu programa, y que el enlace mismo puede serte muy útil.

    https://msdn.microsoft.com/en-us/library/sxw2ez55.aspx

    Estamos al pendiente de cualquier actualización de tu parte.

    Saludos Cordiales

    Gracias por usar los foros de MSDN.

    Pablo Rubio
     _____

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    martes, 19 de diciembre de 2017 21:39
    Moderador

Todas las respuestas

    • Propuesto como respuesta Pablo RubioModerator martes, 19 de diciembre de 2017 21:35
    • Editado HQ56 miércoles, 20 de diciembre de 2017 13:38
    • Marcado como respuesta Pablo RubioModerator martes, 26 de diciembre de 2017 22:48
    martes, 19 de diciembre de 2017 20:12
  • Pero si la quito me marca error de sintaxis. Cómo debería quedar?
    martes, 19 de diciembre de 2017 21:31
  • Hola Zarpis

    Con referente a tu consulta, te recomiendo que visites el siguiente enlace (en inglés) que te voy a compartir ya que, en el explica las posibles causas del error que se te muestra al momento de ejecutar tu programa, y que el enlace mismo puede serte muy útil.

    https://msdn.microsoft.com/en-us/library/sxw2ez55.aspx

    Estamos al pendiente de cualquier actualización de tu parte.

    Saludos Cordiales

    Gracias por usar los foros de MSDN.

    Pablo Rubio
     _____

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    martes, 19 de diciembre de 2017 21:39
    Moderador