Format ciągu inicjalizacyjnego poza specyfikacją, zaczynając od indeksu 0
Mam aplikację ASP.NET, która działa dobrze na moim lokalnym komputerze deweloperskim.
Kiedy uruchamiam tę aplikację online, wyświetla następujący błąd:
Format ciągu inicjalizacyjnego poza specyfikacją, zaczynając od indeksu 0
Dlaczego to się wyświetla i jak mogę to naprawić?
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
23 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
ciągi połączeń
http://www.connectionstrings.com/
które mają listę często używanych.
Powszechnie używane sznurki łączące to:
[b]
SQL Server 2012
[/b]>
standardowa ochrona
zaufane połączenie
Łączenie się z instancją
SQL Server
Składnia nazwy serwera/instancji używana w parametrze serwera jest taka sama dla wszystkich parametrów połączenia programu SQL Server.
[b]
SQL Server 2005
[/b]>
standardowa ochrona
zaufane połączenie
Łączenie się z instancją
SQL Server
Składnia nazwy serwera/instancji używana w parametrze serwera jest taka sama dla wszystkich parametrów połączenia programu SQL Server.
[b]
MySQL
[/b]>
Standard
Wskazanie portu
TCP
[b]
Oracle
[/b]>
Korzystanie z TNS
Korzystanie z zintegrowanych zabezpieczeń
Korzystanie z ODP.NET bez tnsnames.ora
Anonimowy użytkownik
Potwierdzenie od:
Moje hasło zawierało średnik, więc napotkałem ten problem. Więc dodałem hasło w cudzysłowie. To był naprawdę głupi błąd.
Zmieniłem następujące:
do
Anonimowy użytkownik
Potwierdzenie od:
Otrzymałem ten błąd podczas wywoływania .
Nawet jeśli wybrałem prawidłowy w , nadal przeglądałem plik web.config tego projektu początkowego, w którym brakowało parametrów połączenia.
Anonimowy użytkownik
Potwierdzenie od:
serwer
= FOOSERVER; bazy danych = BLAH_DB; kredyt = fałsz; jak się połączyć timeout = 60; Zintegrowane zabezpieczenia = SSPI;
Jeśli w linii brakuje tagu , metoda powróci z tym błędem.
Anonimowy użytkownik
Potwierdzenie od:
okazuje się, że problem polegał na ustawieniu ciągu połączenia do ctora, na przykład:
nie zadziała, będzie:
Uderz mnie..
Anonimowy użytkownik
Potwierdzenie od:
jak teraz jest połączenie:
działa dobrze (ten problem został rozwiązany dla .net core)
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Sprawdź moją odpowiedź na ten post:
Jak naprawić błąd :: format ciągu inicjalizacyjnego nie pasuje do specyfikacji zaczynającej się od indeksu 0
https://coderoad.ru/9040266/
::
Anonimowy użytkownik
Potwierdzenie od:
Zmienił się od teraz
DO
Anonimowy użytkownik
Potwierdzenie od:
Lepiej jest po prostu zmienić to w części kodu, a nie w projekcie.
Anonimowy użytkownik
Potwierdzenie od:
Problem polegał na zdefiniowaniu parametrów połączenia w moim pliku web.config.
Powyższe działało dobrze lokalnie, ponieważ korzystałem z lokalnej bazy danych podczas zarządzania użytkownikami i rolami. Kiedy przeprowadziłem migrację mojej aplikacji do IIS, lokalna baza danych nie była już dostępna, a ponadto chciałbym używać mojej bazy danych w SQL Server. Więc zmieniam powyższe parametry połączenia na następujący odpowiednik bazy danych SQL Server:
UWAGA: Załóżmy również, że zamierzasz użyć tego samego serwera SQL z lokalnego pudełka (na wypadek, gdybyś umieścił go w swoim lokalnym pliku web.config - co zrobiłem w moim przypadku).
Anonimowy użytkownik
Potwierdzenie od:
FYI - uprościłem ten przykład, w prawdziwym kodzie zostało to wyłączone w produkcji (ale nadal w kodzie)
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Zamiast
Używany
Ustaw DefaultConnection, jak pokazano poniżej
>
Uwaga: connectionString nie obejmuje:
| x | informacje o metadanych: "metadata = res:// */"
| x | zakodowane cudzysłowy: „” ”
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Aplikacja zgłosiła nieobsługiwany wyjątek. System.ArgumentException: format łańcucha inicjującego nie jest zgodny ze specyfikacją zaczynającą się od indeksu 91.
Zmieniam parametry połączenia z:
Serwer =.; Baza danych = dbname; identyfikator użytkownika = myuserid; hasło = mojehasło "
do:
Serwer =.; Baza danych = dbname; identyfikator użytkownika = myuserid; hasło = 'mojehasło' "
i działa, dodałem pojedyncze cudzysłowy do hasła.
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
https://i.stack.imgur.com/Tm9fl.jpg
Anonimowy użytkownik
Potwierdzenie od:
& <% $ ConnectionStrings: MyConnectionString% & >. Zdarzyło się to nam podczas aktualizacji .NET z 3.5 do 4.x.
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Wcześniej napisałem parametry połączenia do appsettings.json w sekcji, którą utworzyłem (ConnectionsStrings (zwróć uwagę na dodatkowe „s”) i próbowałem połączyć się z moją bazą danych, co spowodowało błąd. Była to aplikacja ASP.NET CORE, więc chciałem się z nim połączyć za pomocą metody .GetConnectionString (więcej na ten temat
tutaj
https://www.youtube.com/watch?v=xMktEpPmadI). wygląda na to, że ta metoda niejawnie szuka parametrów połączenia w sekcji „ConnectionStrings”, które nie istniały. Kiedy zmieniłem/naprawiłem to na „ConnectionStrings”, działało zgodnie z oczekiwaniami.
Anonimowy użytkownik
Potwierdzenie od:
ten link może ci pomóc
popychać
przycisk
https://coderoad.ru/25161419/