2013-02-21 2 views
0

Im은 VS2012, SQLExplress, 최신 .net 버전, 코드 첫 번째 엔티티 프레임 워크 및 마이그레이션을 사용하여 간단한 웹 응용 프로그램을 작성합니다. VS2012의 표준 MVC4 템플릿을 기반으로 새로운 간단한 멤버십을 기본값으로 사용하고 있습니다.Websecurity가 올바른 데이터베이스를 사용하지 않음

내 문제는 내가 만든 데이터베이스를 사용하여 Websecurity 클래스를 가져올 수 없다는 것입니다. 내 Glabal.asax.cs이 코드를 사용

WebMatrix.WebData.WebSecurity.InitializeDatabaseConnection(
"DefaultConnection", 
"UserProfile", 
"UserId", 
"UserName", 
autoCreateTables: true); 

필자뿐만 아니라 마이그레이션 종자 방법이 코드를 실행하려고하지만 같은 결과. 나는 initalizer이 같은 VS2012에서만 볼 수있는 새로운 연결을 생성 autoCreateTables: true 매개 변수를 사용하여 초기화를 실행하면

내 ConnectionString을이

<add name="DefaultConnection" connectionString="Data Source=localhost\SQLEXPRESS;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False" providerName="System.Data.SqlClient" /> 

것 같습니다. 나는 다른 연결 문자열을 사용하는 websecurity을 강제로 시도로

이 그림은 SecurityConnection2라는 연결을 보여주고 있지만,이 DefaultConnection을 사용하고있는 것처럼 동작은 동일합니다. 당신이 볼 수 있듯이,이 새로운 연결 내에서 모든 테이블을 생성하고 데이터베이스의 어디서나 tose 테이블을 찾을 수 없습니다.

대신 autoCreateTables: false을 사용하면 이니셜 라이저에서 UserProfile 테이블이 존재하지 않는다는 오류가 발생합니다.

모든 예제와 튜토리얼에서 Ive는이 기능을 읽었지만 그냥 작동하지 않습니다.

아마 이것에 simpe 해결책이있다 그러나 나는 그것을 보지 못하고 여기 어떤 도움든지를 위해 고맙게 여길 것입니다.

답변

0

문제의 해답은 연결 문자열에 "초기 카탈로그"가 포함되어 있지 않다는 것입니다.