none
Problema con el connectionString RRS feed

  • Pregunta

  • Buenas, ya se que hay mil hilos de estos, pero ya he probado de todo y no logro hacer que funcione. 

    tengo una instancia de sql en mi maquina llamada MsSqlServer y no logro que se conecte, mi appconfig es el siguiente:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <!--<system.windows.forms jitDebugging="true" />-->
      <configSections>
        <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
        <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
      </configSections>
      <connectionStrings>
     
      <add name="PollosContext"  
            providerName="System.Data.SqlClient"  
            connectionString="Server=.\mssqlserver;Database=pollazos;Integrated Security=True;"/> 
     </connectionStrings>
      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
      </startup>
      <entityFramework>
        <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
        <providers>
          <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
        </providers>
      </entityFramework>
    </configuration>

    y la clase dbcontext  que defino es la siguiente

    Imports System.Data.Entity Imports System.Data.Entity.ModelConfiguration.Conventions Imports Pollazos.DataAccess PublicClassPollosContext

    InheritsDbContext

    #Region"properties"

    #EndRegion

    Protected Overrides Sub OnModelCreating(modelBuilder AsDbModelBuilder)

            modelBuilder.Conventions.Remove(OfPluralizingTableNameConvention)()         modelBuilder.Entity(OfCierreDeCaja).HasMany(Function(m) m.Movimientos).WithRequired(Function(c) c.CierreDeCaja).HasForeignKey(Function(c) c.CierreDeCajaId).WillCascadeOnDelete(False)     EndSub

    Public Sub New()         Database.SetInitializer(NewPoiosContextInitializer())

    EndSub

    EndClass

       que puedo estar haciendo mal?!

    Saludos


    • Editado NioDeTark miércoles, 15 de octubre de 2014 20:34
    miércoles, 15 de octubre de 2014 14:55

Todas las respuestas

  • Saludos, por favor cambia esta parte por algo asi:

    ConnectionString="Server='NOMBRE_DEL_SERVER';Database=pollazos;Integrated Security=True;"

    en vez de

    ConnectionString="Server=.\mssqlserver;Database=pollazos;Integrated Security=True;"

    miércoles, 15 de octubre de 2014 15:10
  • hola

    pero MsSqlServer  es el nombre de la pc o de la instancia de sql server ?

    porque si usas .\MsSqlServer  estas indicando una instancia, el . (punto) hace referencia a localhost

    por lo que explicas te quieres conectar remoto no ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 15 de octubre de 2014 17:37
  • buenas, mssqlserver es el nombre de la instancia, la maquina se llama IngClementeUnne.

    Ya probe: 

    ConnectionString="Server=IngClementeUnne\mssqlserver;Database=pollazos;Integrated Security=True;"

    ConnectionString="Server=(local)\mssqlserver;Database=pollazos;Integrated Security=True;"

    ConnectionString="Server=(localhost)\mssqlserver;Database=pollazos;Integrated Security=True;"

    un dato extra, es que la maquina esta en un dominio, puede esto afectar? saludos!

    miércoles, 15 de octubre de 2014 20:37
  • Hola,

    Por lo que veo a simple vista el problema puede ser que estas usando DATABASE en el connection string en lugar de INITIAL CATALOG pero independientemente estas usando Entity Framework? te dejo un ejemplo de connection para EF

    <connectionStrings>
        <add name="AdventureWorksEntities"
    connectionString="metadata=.\AdventureWorks.csdl|.\AdventureWorks.ssdl|.\AdventureWorks.msl;
    provider=System.Data.SqlClient;provider connection string='Data Source=localhost;
    Initial Catalog=AdventureWorks;Integrated Security=True;Connection Timeout=60;
    multipleactiveresultsets=true'" providerName="System.Data.EntityClient" />
    </connectionStrings>


    MCTS - MCP - MST - New Technologies Evangelist

    miércoles, 15 de octubre de 2014 20:48
  • Saludos, por favor cambia esta parte por algo asi:

    ConnectionString="Server='NOMBRE_DEL_SERVER';Database=pollazos;Integrated Security=True;"

    en vez de

    ConnectionString="Server=.\mssqlserver;Database=pollazos;Integrated Security=True;"

    Haciendome auto quote :P 

    IngClementeUnne

    ConnectionString="Server='IngClementeUnne';Database=pollazos;Integrated Security=True;"

    Debido a que tienes el default instance name, este no se pone, a excepcion que sea una instancia nombra (cualquier otro nombre menos mssqlserver) o sea ti su base se llamara perrito uno seria

    ConnectionString="Server='IngClementeUnne\perrito';Database=pollazos;Integrated Security=True;"

    Si usas localhost siempre se intentare conectar a la maquina local no a la maquina que especificas (digamos que instalas el software en otra maquina).  

    miércoles, 15 de octubre de 2014 21:01
  • pero quieres conectarte de forma remota o local ? es un desarrollo web o desktop ?

    recuerda que si usas sql express por defecto no permite conexiones remotas debes habilitarlas

    Enable Remote Connection on SQL Server 2008 Express

    tambien valida el firewall de window sno este bloqueando el puerto

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 15 de octubre de 2014 22:02
  • Este es el error que me tira:

    Excepción no controlada del tipo 'System.Data.SqlClient.SqlException' en EntityFramework.dll

    Información adicional: Error relacionado con la red o específico de la instancia mientras se establecía una conexión con el servidor SQL Server. No se encontró el servidor o éste no estaba accesible. Compruebe que el nombre de la instancia es correcto y que SQL Server está configurado para admitir conexiones remotas. (provider: SQL Network Interfaces, error: 25 - La cadena de conexión no es válida)

    Ya he probado cambiando database por initial Catalog. 

    Supongo que la conexion es local. Ya que el servidor sql esta en la misma maquina. Ahora, no se si al estar la maquina en un dominio lo toma como si fuera que es remota. 

    jueves, 16 de octubre de 2014 12:07
  • ya encontré la solución, aparentemente el sqlExpress que tengo instalado es una instalación predeterminada, la cuestión es que tuve que poner un punto en el lugar del nombre del servidor, la cosa termino asi:

     <add name="PollosContext"  
            providerName="System.Data.SqlClient"  
            connectionString="Server=.;initial catalog=pollazos;Integrated Security=True;"/> 

    Saludos y gracias

    jueves, 16 de octubre de 2014 12:39
  • hola

    no entiendo desde donde te quieres conectar ni que tipo de aplicacion desarrollas?

    lo unico que esta claro es que no te puedes conectar a sql server

    si es local usas Server=.\nombreinstancia

    si es remota usas Server=NombrePCoIP\nombreinstancia

    ahora debes validar antes que el servicio permite conexiones remotas, por por temas de seguridad solo se habilita para conectarte localmente

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 16 de octubre de 2014 13:17