Ten format wskazuje połączenie lokalne:
.\SQLEXPRESS
Z innego serwera musisz podać nazwę serwera lub adres IP, np.:
192.168.1.205\SQLEXPRESS
YOURMACHINE\SQLEXPRESS
Musisz również sprawdzić, czy wystąpienie to SQL Server Express. Od Twoje inne prawie identyczne pytanie wygląda jak domyślna instancja.
Powinieneś również przestać używać tej głupiej techniki instancji użytkownika / attachDbFilename. Dołącz poprawnie swoją bazę danych do instancji, a następnie odwołaj się do logicznej nazwy bazy danych za pomocą Initial Catalog=aspnetdb;
w ciągu połączenia. Ta funkcja instancji użytkownika została wycofana z wielu powodów, a to z pewnością jest jednym z nich.
Oczywiście mogą wystąpić inne problemy sieciowe, które temu uniemożliwiają, m.in. jeśli serwer znajduje się w innej domenie, ustawienia zapory sieciowej zakłócają itp. Ale twój drugi serwer nigdy nie będzie w stanie uzyskać dostępu do twojego komputera za pomocą kropki w nazwie serwera.
EDYTUJ zapewnienie kroków dziecka, ponieważ oczywiście moja rada nie jest przestrzegana. Zakładając, że faktycznie dołączyłeś bazę danych aspnetdb na nowym serwerze, spróbuj tego:
connectionString="data source=192.168.85.124\SQLEXPRESS;
Integrated Security=SSPI;
Initial Catalog=aspnetdb;"
Jeśli mimo wszystko nie używasz nazwanej instancji SQL Express, spróbuj:
connectionString="data source=192.168.85.124;
Integrated Security=SSPI;
Initial Catalog=aspnetdb;"
Do uwierzytelniania SQL użyj tej samej nazwy użytkownika/hasła, których używasz w Management Studio:
connectionString="data source=192.168.85.124;
User ID=username; Password=password;
Initial Catalog=aspnetdb;"
To jest rozwiązywanie problemów z 101 rzeczami. Jeśli nadal nie możesz zmusić tego do działania, być może będziesz musiał zatrudnić konsultanta na 10 minut, aby to naprawić, ponieważ nie możesz dowiedzieć się, co zrobiłeś i dlaczego nie możesz go uruchomić.