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