Me encontré con una situación extraña al conectarme a una instancia de SQL Server. La instancia se está ejecutando y escuchando en el puerto 1433; sin embargo, no puedo conectarme a menos que especifique el puerto predeterminado de 1433 en la cadena de conexión.
No funciona:
<add name="DataContext" connectionString="Data Source=192.168.150.1\sqlinstance;Initial Catalog=DATABASE;Persist Security Info=True;User ID=dbUser;Password=dbPass;MultipleActiveResultSets=True; Asynchronous Processing=true;Max Pool Size=700" providerName="System.Data.SqlClient" />Funciona:
<add name="DataContext" connectionString="Data Source=192.168.150.1\sqlinstance,1433;Initial Catalog=DATABASE;Persist Security Info=True;User ID=dbUser;Password=dbPass;MultipleActiveResultSets=True; Asynchronous Processing=true;Max Pool Size=700" providerName="System.Data.SqlClient" />Esto solo comenzó a suceder recientemente y solo afecta nuestro entorno de prueba. Nuestro entorno de producción está configurado idéntico a excepción de la dirección IP y no sufre de esto. No es gran cosa simplemente agregar el puerto a la cadena de conexión, pero me gustaría averiguar cómo sucedió esto. También debo mencionar que no tengo problemas cuando uso Management Studio o simplemente uso telnet para verificar que el puerto está abierto. Estoy pensando que esto podría ser un problema de C # o .net en lugar de un problema de configuración de SQL Server.
configure los protocolos de cliente ms sql "memoria compartida" y "canalizaciones con nombre" como deshabilitados si usa solo tcp ip - cadena de conexión sin puerto predeterminado