2009-11-17 2 views
3

2 개의 MSSQL 데이터베이스와 함께 제공되는 godaddy에서 Windows 공유 호스팅 계정을 구입했습니다. 하나는 내 사이트 데이터를 보유하고 다른 하나는 사이트 구성원을 저장하기 위해 aspnet 멤버십 스키마를 설치하도록 설정합니다. 이 사이트는 첫 번째 데이터베이스의 데이터 표시에도 완벽하게 작동합니다. 내가 로그인하거나 등록 할 때 그러나 나는이 심한 오류를Godaddy ASP.NET 멤버십 데이터베이스 문제

예외 정보를 얻을 : System.Configuration.Provider.ProviderException : 는 SSE 제공자가 연결 문자열에 지정된 데이터베이스 파일을 찾을 수 없습니다. 구성된 신뢰 수준 (높은 신뢰 수준 아래)에서 SSE 공급자는 데이터베이스 파일을 자동으로 만들 수 없습니다.

필자의 web.config을 거쳤으며 필자의 2 개의 연결 문자열에는 아무런 문제가 없습니다. godaddy는 1이 멤버쉽 일 때 2 개의 mssql 데이터베이스를 동시에 사용하는 데 문제가있는 것으로 보입니다.

누군가 해결책이나 해결 방법을 알고 있습니까?

+1

나는 결국 해결책을 찾았다 (고맙습니다!) - 2 일간 인터넷 검색을 한 결과 나는 그것을 알아 냈습니다! 당신의 멤버십 공급자 conn 문자열로 "LocalSqlServer"를 사용하지 않으면 Godaddy는 역할을 허용하지 않습니다 - 여기에 내 web.config에 대한 편집 내용이 있습니다 - (1) aspnetmem 공급자 conn 문자열을 "LocalSqlServer"(2)로 변경했습니다. "LocalSqlServer"conn 문자열 ...하지만 제거하려면 먼저 제거해야합니다. 즉, ...

답변

11

나는 나의 경험이 모든 사람들에게 이익이되기를 바랍니다. 기본적으로 godaddy에서 aspnet 멤버십 문제를 피하려면 연결 문자열로 항상 "LocalSqlServer"를 사용하십시오. 즉

<providers> 
    <remove name="AspNetSqlMembershipProvider" /> 
    <add name="AspNetSqlMembershipProvider" connectionStringName="LocalSqlServer" 
     ..other attributes here... /> 
</providers> 

그런 다음이

<connectionStrings> 
    <remove name="LocalSqlServer"/> 
    <add name="LocalSqlServer" 
     connectionString="Data Source=xxxx; Initial Catalog=xxx; User ID=xxx; Password=xxx;" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings> 
+0

안녕하십니까,이 솔루션에 대한 감사드립니다. 나는 내 머리를 긁적 거린 후 잠을 자려고했는데 그때 인터넷 검색을 한 다음 답장을 받았습니다. – pokrate

+0

이 솔루션에 대한 또 다른 감사드립니다. –

+0

믿을 수 없다 ... 당신은 godaddy가 SQL 데이터베이스 섹션에서 이것에 대해 논평 할 것이라고 생각할 것입니다. 왜 그들은 LocalSqlServer 이름을 강제로 사용합니까? – Induster

1

처음에는 같은 문제로 실행 및 MVC3를 사용하고 제거해야 ...은 "LocalSqlServer"를 ConnectionString을 만들 수 있습니다. 위의 솔루션은 작동하지만 MVC3의 일부 다른 변경 사항이 있습니다. Web.config의에서 "의 connectionStringName"에 대한

검색 connectionstrings이 있는지 확인 또한 아래 connectionStringName="LocalSqlServer"

로 이름을 바꿉니다 그것은 사람이 MVC3에서 유사한 문제가있는 경우 그래서 그들에게 도움이 될 나에게 그것을 알아낼 오랜 시간이 걸렸습니다

- 추가하려면 (공유 호스트를 사용하는 모든 사용자에게 중요하므로 machine.config LocalSqlServer 연결 문자열을 대신 사용합니다.) - 현재 연결 문자열을 유지합니다 (필자의 경우 FilmiDb이며, EF 모델에서 데이터베이스에 연결하면 오류가 발생합니다.)

<connectionStrings> 
    <remove name ="LocalSqlServer"/> 
    <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Initial Catalog=SofilmiDb;Integrated Security=SSPI" providerName="System.Data.SqlClient" /> 
    <add name="FilmiDb" connectionString="Data Source=.\SQLExpress;Initial Catalog=FilmiDb;Integrated Security=SSPI" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
관련 문제