2014-04-08 3 views
0

VS2013에서 EntityFramework를 사용하여 SQL Server 데이터베이스에 데이터를 저장/검색하는 Asp.net WebAPI 프로젝트를 만들었습니다. SQL Server 데이터베이스는 Azure에서 호스팅됩니다.C# Azure EntityFramework SQL Server 데이터베이스 오류

나는 내 웹 API 프로젝트에서이 작업을 수행하는 Controller 클래스를 가지고 모든 잘 작동 ... 그때 나는이 오류 얻을 푸른 내 WebAPI 프로젝트를 게시 할 때까지 :

InnerException: System.Data.SqlClient.SqlException. Message=Invalid object name 'dbo.MyTableName'. 

그것은에게 중요한을 Localhost를 사용하여 WebAPI 프로젝트를 실행하면이 작업이 정상적으로 작동한다는 점에 유의하십시오.

문제가 무엇인지 조사 할 수있는 사람이 누구인지 알고 있습니까? 디버거에 연결하고 중단 점을 넣습니다.

db.MyTableName.Find(id); 

내가 그것을 명확하게 EntityFramwork를 사용하여 데이터베이스에 연결하는 데 문제 그래서 잘 작동 하드 코드 값을 반환 할 때 : 나는이 선에 실패한 것 볼 수 있습니다. Azure에 업로드 한 후 EntityFramework의 Model 객체에 대한 참조 경로가 올바르지 않습니다. Web.config의에서 : 메타 데이터 = 입술 : // */Model1.csdl ... 내가 메타 데이터 = 입술 시도

: //MyAssemblyName/Model1.csdl을 ...

나는 메타 데이터 = 입술을 시도 : //MyAssemblyName.dll/Model1.csdl ...

하지만 여전히 동일한 오류가 있습니다. 다른 유사 콘텐츠를 여기에서 사용해 볼 수 있습니까?

또한 정확한 IP 주소가 허용되었는지 확인하기 위해 SQL Server/azure FIREWall로 업데이트했지만 그 중 하나도 문제가 아닙니다.

아이디어가 있으십니까?

편집 는 또한

connectionString="metadata=res://AssemblyName/Model1.csdl|res://AssemblyName/Model1.ssdl|res://AssemblyName/Model1.msl;provider=System.Data.SqlClient;provider connection string="Data Source=tcp:xxx.database.windows.net,1433;Initial Catalog=dev_db;User Id=xxx;Password=xxx;" providerName="System.Data.EntityClient" 
connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string="Data Source=tcp:xxx.database.windows.net,1433;Initial Catalog=dev_db;User Id=xxx;Password=xxx;" providerName="System.Data.EntityClient" 
+0

SQL Azure를 사용하기 위해 연결 문자열을 업데이트 했습니까? Azure에 배포 된 webapi에 디버거를 어떻게 연결 했습니까? – ragche

답변

0

코드를 Azure로 게시하는 동안 자동으로 변경되었습니다. 그래서 Azure 서버에서 web.config 파일을 편집하고 웹 사이트를 다시 시작해야만했습니다.

0

푸른 SQL를 들어, 엔터티 연결 문자열과 같아야 행운 이러한 연결 문자열을 시도 : 연결 문자열였다 무슨 일이 일어 났는지

connectionString="metadata=res://*/xxxDataModel.csdl|res://*/xxxDataModel.ssdl|res://*/xxxDataModel.msl;provider=System.Data.SqlClient;provider connection string="data source=xxx.database.windows.net;initial catalog=xxxData;User Id=xxx;password=xxx;MultipleActiveResultSets=True;App=EntityFramework"" 
+0

나는 그것을 시도했지만 여전히 작동하지 않습니다. 시도한 다른 연결 문자열로 질문을 업데이트했습니다. – Bob

관련 문제